Переход к редактированию записей при нажатии на строку GridView

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
long399
Сообщения: 96
Зарегистрирован: 2019.08.13, 08:03
Откуда: г. Новосибирск

Переход к редактированию записей при нажатии на строку GridView

Сообщение long399 »

Всем добра! Хочу сделать, чтобы при нажатии в любом месте определенной строки GridView осуществлялся переход к редактированию записи (action update). Написал такой js-код:

Код: Выделить всё

$("tbody td").click(function (e) {
    var id = $(this).closest("tr").data("key");
    if(e.target == this)
        location.href = "/record/update?id=" + id;
});
Все работает, но у меня на индексной странице подключен pjax. И после использования пагинации переход к редактированию при клике на строку перестает работать.

Изобрел (изменив первоначальный скрипт) пока-что такой костыль, который помог:

Код: Выделить всё

function f() {
    $("tbody td").click(function (e) {
        var id = $(this).closest("tr").data("key");
        if(e.target == this)
            location.href = "/record/update?id=" + id;
    });
}

$(document).ready(function() {
    f();
});

$(document).on('pjax:complete', function() {
    f();
})
Подскажите, пожалуйста, как решить эту проблему правильно. Наверняка должно быть лучшее решение.
unknownby
Сообщения: 749
Зарегистрирован: 2019.11.05, 16:34
Контактная информация:

Re: Переход к редактированию записей при нажатии на строку GridView

Сообщение unknownby »

long399 писал(а): 2022.08.01, 10:44 Всем добра! Хочу сделать, чтобы при нажатии в любом месте определенной строки GridView осуществлялся переход к редактированию записи (action update).

Подскажите, пожалуйста, как решить эту проблему правильно. Наверняка должно быть лучшее решение.
У GridView есть свойство rowOptions на который можно обратить внимание, а не писать JS. ;)
Ответить