在我的jqgrid中我有一个代表id的表中的字段,我将其设置如下
{name:'e_info_id',index:'e_info_id', width:60, sorttype:"int",key: true}
对于json阅读器,我将其设置为
jsonReader : { repeatitems: false ,id: "e_info_id",root:"rows"}
现在,当我单击“添加/编辑”图标时,会打开一个“编辑”对话框,因为我没有将e_info_id设置为editable:true
,即id字段不会显示在表单对话框中,但是当我单击时在提交时,我无法在以下功能中访问该ID
onclickSubmit: function (options, postdata) {
postdata.e_info_id // is undefined
}
但是一旦我将e_info_id定义为editable = true,postdata.e_info_id现在就有一个值。现在我觉得这很奇怪,我不知道如何摆脱这个
{name:'e_info_id',index:'e_info_id', width:60, sorttype:"int",key: true,editable:true}
此外,为了防止用户意外更新e_info_id,我试图将其隐藏如下并保持editable:true只是为了获取$.jgrid.edit
中e_info_id的值。
beforeShowForm: function(form) { $('#tr_e_info_id', form).hide(); }
但是这个问题,当我双击桌子的行之前,事件表格不会起火,因此会出现e_info_id字段。
ondblClickRow: function(rowid) {
$(this).jqGrid('editGridRow',rowid);
}
现在我没有解决方法,所以基本上我的问题不是在添加/编辑对话框中显示e_info_id字段,而是在onclickSubmit中获取e_info_id的值
答案 0 :(得分:1)
为什么同时使用key: true
和 jsonReader : { id: "e_info_id",...}
?我认为这是你的主要问题。我建议您删除id: "e_info_id"
并仅使用key: true
。
此外,我不理解'e_info_id'
列的含义。如果您使用行id
id
}中的正确<tr>
属性填充jqGrid,则ID将以'id'
的名称发送到服务器(如果删除)来自id: "e_info_id"
的{{1}}。您想要显示用户的列吗?您是否希望用户在“编辑”表单中看到信息?所有选项都是可能的,但不依赖