2015-05-18 4 views
1

Я пытаюсь установить значение editable либо true, либо false зависит от значения ячейки в colModel. Есть ли способ сделать это?Кондиционный редактируемый зависит от значения в colModel jqGrid

{name:'keywords',index:'keywords', width:150, editable:true,edittype:'select', 
editrules:{required: true}, 
editoptions:{value:{'one':'one','two':'two','three':'three','four':'four'},size:5} }, 

В этом я хочу установить editable:false если cellvalue существуют еще editable:true и editoptions:{value:{'one':'one','two':'two',...} для конкретной ячейки.

ответ

1

Самый простой способ реализовать требование - использовать free jqGrid. Это развилка (основанная на jqGrid 4.7), которую я сейчас разрабатываю. Из-за таких требований я реализовал функцию, описанную в the wiki article. Это позволяет определить editable свойство как функция. Таким образом, вам нужно просто определить обратный вызов, с которого вы возвращаете true или false на основании любых ваших пользовательских критериев. Обратный вызов editable получает много информации о контексте выполнения как свойства единственного параметра. Свойства rowid, iRow, iCol и name позволяют использовать getLocalRow или getCell, чтобы получить любой столбец строки. Таким образом, вы можете включить редактирование выборочно очень простым способом.

Если вы не можете перейти на бесплатный jqGrid, вы можете использовать старые трюки, которые являются специфическими для режима редактирования, который вы используете. Я могу переслать вам the answer, который может быть использован в случае редактирования формы и this one, который может быть использован в случае редактирования формы, если вы позвоните по телефону editRow. В случае использования inlineNav или formatter: "actions" есть альтернативные решения, которые вы можете найти также в моих старых ответах.

Смежные вопросы