Agile Toolkit: перенаправление на другую страницу с аргументами

Я только начал изучать АТК.

В моем проекте у меня есть сетка модели «А». Есть много строк для модели «А».

У меня есть отдельная страница для этой модели, на которой показаны ее детали.

Теперь я хочу, чтобы мои строки сетки были доступны для кликов, и он должен перенаправлять на эту страницу с «ID» в качестве аргумента. Так что я могу получить его и загрузить его снова. Чтобы показать его детали на этой странице.

Как этого добиться?


person Akshat    schedule 28.02.2014    source источник
comment
Это выполнимо, о чем вы просите, но почему бы просто не использовать CRUD, уже полностью реализованный в ATK4?   -  person DarkSide    schedule 01.03.2014
comment
Но я хочу, чтобы его пользовательский интерфейс был полностью настроен. CRUD/Grid может иметь кнопку, но это не очень удобно для пользователя. Если кто-то хочет увидеть детали этой строки, он обычно нажимает на строку, а не на кнопку в этой строке.   -  person Akshat    schedule 03.03.2014
comment
Затем вам нужно добавить небольшой метод JavaScript onClick в строку таблицы сетки. Что-то вроде $grid-›js(true)-›univ()-›find('tr')-›click(function(){doSomething();});   -  person DarkSide    schedule 03.03.2014


Ответы (1)


Это должно быть легко возможно с обработчиком ->on.

$page=$this->api->url('./subpage');

if($crud->grid) {
    $crud->grid->on('click','tr')->univ()->location(
        array($page, 'id'=>$this->js()->_selectorThis()->data('id'))
    );
}

если ->on() не работает в вашей версии инструментария, вы также можете использовать ->js('click')->_selector('#'.$crud->grid->getJSID().' tr')->univ()->location......;

Некоторая документация здесь:

https://github.com/atk4/atk4/blob/4.3/lib/AbstractView.php#L546

person romaninsh    schedule 03.03.2014