Встроенное редактирование jqgrid не работает со столбцом datepicker - PullRequest
0 голосов
/ 11 мая 2018

Я реализовал jqGrid, как показано в следующей ссылке: - http://www.guriddo.net/demo/guriddojs/integrations/inline_edit_controls/index.html

По умолчанию, когда пользователь изменяет любое значение и нажимает кнопку ввода, строка сохраняется и выходит из режима редактирования.Но это не работает со столбцом со средством выбора даты и времени.

Чтобы выполнить репликацию, щелкните столбец «Дата заказа» в демонстрационной версии выше, выберите любую дату и попробуйте нажать клавишу ввода.Это не работаетно работает хорошо, если вы измените любой другой столбец.

Я попытался установить фокус на элемент, но не сработал.

1 Ответ

0 голосов
/ 11 мая 2018

Вы можете изменить код dataInit

dataInit: function (element) {
    $(element).datepicker({
        id: 'orderDate_datePicker',
        dateFormat: 'M/d/yy',
        //minDate: new Date(2010, 0, 1),
        maxDate: new Date(2020, 0, 1),
        showOn: 'focus'
    });
}

, добавив onSelect обратный вызов, который может быть примерно следующим

dataInit: function (elem) {
    var rowid = $(elem).closest("tr.jqgrow").attr("id");
    $(elem).datepicker({
        dateFormat: "dd-M-yy",
        autoSize: true,
        changeYear: true,
        changeMonth: true,
        showButtonPanel: true,
        showWeek: true,
        onSelect: function () {
            if (event != null && event.keyCode === 13) {
                $(elem).datepicker("hide");
                $grid.jqGrid("saveRow", rowid);
            } else {
                setTimeout(function () {
                    $(elem).focus();
                }, 50);
            }
        }
    });
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...