Jqgrid: как разрешить редактирование для одной записи, а не для других - PullRequest
0 голосов
/ 04 февраля 2010
<table id="gridmain"></table>
<div id="pagermain"></div>

Я включил обновление всех форм, поставив: (Add: true, Edit: true, Delete: true)

Но для некоторых записей с скажем: записи с полем ConfirmFlag = 1 (идентификатор столбца "ConfirmFlag"), я хотел бы установить его так, чтобы редактирование не было возможным (т. Е. Форма редактирования не открыта и возможна диалоговое окно с надписью «Cannot Edit», аналогично тому, когда строка не выбрана и кнопка редактирования нажата). Но для других записей с ConfirmFlag = 0 я хотел бы открыть форму редактирования.

Могу ли я узнать, как этого можно достичь?

Спасибо

1 Ответ

1 голос
/ 04 февраля 2010

Если вы хотите запретить редактирование определенных строк, запустите редактирование в onSelectRow вместо установки Edit: true.

  var lastsel2;
  jQuery("#grid").jqGrid({  
    .....
    onSelectRow: function(id){
      if(id && id!==lastsel){
        jQuery('#grid').restoreRow(lastsel);
        if (<condition>) {
        jQuery('#grid').editRow(id,true);
          lastsel=id;
        }
      }
    },
    .....
  });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...