2015-06-03 1 views
1

У меня есть сетка со значением в предопределенном поле, я хочу сделать это, чтобы щелкнуть по изменению строки, чтобы изменить значение одного из полей в FormEdit.jqGrid Изменить значение поля на beforeShowForm

ColModel является:

colModel:[ 
       {name:'id',index:'ID', width:50, hidden:true, search:false, editable:false,resizable:false}, 
       {name:'product',index:'product', align:"center", width:20, search:false, editable:false,resizable:false}, 
       {name:'volume',index:'volume', align:"center", hidden:false, width:15, search:false, editable:true} 
       ], 

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

ondblClickRow: function(id){ 
       jQuery("#products").jqGrid('editGridRow', id, { 
        recreateForm:true, 
        beforeShowForm: function(form) { 
         $('#tr_volume',form).show(); 
         $("#tr_volume",form).val('1'); 
         }, 
        reloadAfterSubmit:false, closeOnEscape:true, closeAfterAdd:true, closeAfterEdit:true, 
        editable:true, editrules:{edithidden:true,required:true,number:true,minValue:1}      
       }) 

Но это не работает для меня, то, что неправильно?

ответ

1

Вы не используете hidden: true property of volume column. Таким образом, настройка $('#tr_volume',form).show() не нужна. Значение $("#tr_volume",form).val('1') неверно, потому что элемент <tr> не имеет значения. Я думаю, что вам нужно использовать jusu $("#volume",form).val('1') или $("#volume").val('1'). Поле <input> с id="volume" (тот же идентификатор, что и имя столбца) будет создан в форме. Это поле, которое вы, вероятно, пытаетесь изменить.

+0

Спасибо, Олег! Он отлично работает! – Sici

+0

@Sici: Добро пожаловать! Если проблема решена, вы должны [«принять»] (http://meta.stackexchange.com/a/5235/147495) ответ и получить свои первые очки репутации. – Oleg

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

  • Нет связанных вопросов^_^