Как включить стрелки вверх / вниз в редактировании jqgrid - PullRequest
0 голосов
/ 21 июля 2011

Как реализовать Excel, например, сетку редактирования деталей заказа.

Эта сетка должна быть похожа на Excel:

  1. предпочтительно клавиши со стрелками вверх / вниз для перехода к предыдущей / следующей строке и начала ячейкиредактирование
  2. Все ячейки всегда находятся в режиме редактирования или режим редактирования запускается, если нажата клавиша со стрелкой вверх / вниз или ячейка получает фокус другим способом.
  3. Вкладка перемещается к следующей ячейке в строке
  4. Кнопка «Отправить» отправляет все строки в контроллер ASP .NET MVC на сервере.

Разумно ли / как реализовать это с помощью jqGrid?Все примеры jqGrid, которые я нашел, не позволяют использовать клавиши со стрелками вверх для перемещения следующей / предыдущей строки в режиме редактирования.Если jqGrid не является разумным, где найти другой бесплатный компонент, который может использоваться для реализации этого?Где найти пример кода для этого?

Обновление 1

Я сделал вопрос более точным и, надеюсь, проще:

Как включить стрелки вверх и внизклавиши в режиме встроенного редактирования в jqgrid

Как заставить стрелку вверх перемещать предыдущую строку и клавишу со стрелкой вниз в следующую строку в режиме встроенного редактирования?

Желаемое действие может быть:

  1. Текущая строка должна быть сохранена
  2. Если сохранение было успешным и существует следующая / предыдущая строка, фокус должен быть перемещен в эту строку в том же столбце
  3. Должно начаться встроенное редактирование, и текущий столбец должен бытьто же самое.

Ссылка, которую обеспечивает Олег, показывает перемещение в следующую / предыдущую ячейку в той же строке в режиме редактирования ячейки.Как перейти к следующей / предыдущей строке во встроенном редактировании.Даже если можно реализовать некоторые из приведенных ниже шагов, это делает jqGrid более удобным для быстрого ввода данных.Я попробовал код ниже, но он не работает, так как, вероятно, нет входного элемента в другой строке.Решением было бы заставить jqgrid показывать все ячейки в режиме редактирования, тогда этот код можно использовать.Понятия не имею, это разумно / как реализовать.

<script>
$(document).ready(function () {
    $("input.cell").keyup(function (e) {
        switch (e.keyCode) {
            // up arrow        
            case 40:
                $(this).parent()
                    .parent()
                    .next()
                    .children("td")
                    .children("input.cell[name="
                        + $(this).attr("name") + "]")
                    .focus();
                break;

            // down arrow        
            case 38:
                $(this).parent()
                    .parent()
                    .prev()
                    .children("td")
                    .children("input.cell[name="
                        + $(this).attr("name") + "]")
                    .focus();
                break;
        }
    });
});</script>

Редактирование jqgrid и добавление строк с помощью клавиши "tab" предоставляет пример сохранения строки на клавише Tab, если я попытаюсь ее сохранитьиспользуя этот код или другую идею?

1 Ответ

0 голосов
/ 24 июля 2011

Я потратил целый день на изучение jqGrid для использования в нашем программном обеспечении, и, хотя этот инструмент обладает большим потенциалом, то, чего вы хотите добиться, кажется возможным только благодаря интенсивной настройке.Я надеюсь, что кто-то откликнется и докажет, что я не прав, но я думаю, что вам и мне осталось расширить его сами, чтобы добавить эту функциональность.-Box.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...