Добавление строки с помощью editGridRow в jqGrid

Цикл статей «Документация jqGrid на русском».

Следующая статья — «Метод viewGridRow в jqGrid».
Предыдущая статья — «Метод editGridRow в jqGrid».

Метод editGridRow также используется для добавление данных. Для этого передаётся "new" в качестве rowid.

Этот метод использует общие свойства редактирования из colModel и editurl из jqGrid.

Пример вызова:

или с помощью нового API:

где

  • grid_id — это id родительской таблицы
  • properties — массив пар «имя:значение», включающий любые свойства и события из editGridRow.

Метод использует следующие свойства из языкового файла:

Эти свойства могут быть переопределены с помощью передачи их в качестве свойств в метод. При передаче в метод нужно использовать, например, bSubmit : "Submit", а не $.jgrid.edit.bSubmit : "Submit".

Свойства точно такие же, как и в editGridRow.

Как создаётся форма

При создании формы используются следующие правила:

  • Скрытые поля включаются в форму, и им ставиться свойство display:none для строки в форме.
  • В качестве идентификатора id редактируемого элемента используется name из colModel.
  • В качестве атрибута name элемента редактирования используется name из colModel.
  • Для облегчения манипуляцией элементами в форме редактирования каждая строка в форме имеет id равный "tr_" + name (from colmodel). Например:

Это позволяет легко скрывать и отображать строки в зависимости от условий в событии beforeShowForm.

Что отправляется на сервер

В режиме редактирования данные, отправляемые на сервер, являются объектом {} , который содержит:

  • Пары «имя:значения», где name — это name элемента ввода в форме (это для всех элементов ввода)
  • Дополнительно пара id:"_empty", где _empty означает, что добавляется новая строка.
  • Дополнительно пара oper:"add", чтобы показать, что используется режим добавления.
  • Если объект editData не пуст, то отправляемые данные расширяются им.
  • Если объект, возвращённый из onclickSubmit не пуст, то отправляемые данные расширяются этим объектом.

Цикл статей «Документация jqGrid на русском».

Следующая статья — «Метод viewGridRow в jqGrid».
Предыдущая статья — «Метод editGridRow в jqGrid».

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *