在页面上的网格中,所有这些网格不仅需要禁用内联编辑,而且还应仅通过模式窗体进行编辑。
但是,转动editable:false,同时阻止内联编辑,也会阻止通过表单进行编辑(表单上没有列,只有提交和取消按钮)
我该如何影响这种行为?或者当前版本(3.5.2)无法实现
我还尝试在beforeFormShow和onInitializeForm事件处理程序中启用editable(:true)(在colModel声明中关闭它之后),但是在编辑或添加表单中都没有显示列。
非常感谢您提供的任何见解......
这就是我正在做的事情 -
var addprm = {
width: 450,
height: 200,
top: 125,
left: 50,
beforeShowForm: function(formId) {
id= jQuery('#list10').getGridParam('selrow');
alert('From AddPrm: formId=' + formId + " id=" + id);
var ret = jQuery('#table').getRowData(id);
jQuery('#list10').setColProp('tr_a_name',{editable:true});
jQuery('#list10').setColProp('tr_a_desc',{editable:true});
jQuery('#list10').setColProp('tr_a_comments',{editable:true});
},
reloadAfterSubmit:true,
closeAfterAdd:true
};
与editprm对象一样明智,使用tr_前缀和不带(如在colModel中)
答案 0 :(得分:1)
我相信你可以覆盖onSelectRow方法,这样它就不会触发row_edit响应并强制模型响应。像这样:
jQuery("#grid_id").jqGrid({
....init stuff.....
onSelectRow: function(id){
jQuery("#grid_id").editGridRow( id, properties );
}
.....other stuff......
})