我正在寻找内联编辑JQGrid。
我的JQGrid包含如下列:
colModel: [
{ name: 'Model_ID', index: 'model_id', width: 100, editable: false, hidden:
false },
{ name: 'Cust_Nm', index: 'cust_nm', width: 100, editable: false},
{ name: 'Model_Nm', index: 'model_nm', width: 140, editable: false, },
{ name: 'Client_Nm1', index: 'client_nm1', width: 120, editable: true},
{ name: 'Client_Nm2', index: 'client_nm2', width: 120, editable: true},
{ name: 'Client_Nm3', index: 'client_nm3', width: 120, editable: true},
{ name: 'Date', index: 'regi_date', width: 130, editable:false, search: false }
],
cellEdit: true,
cellurl: '@Url.Action("UpdateJQGrid", "Config")',
cellsubmit: "remote"
我想将'Model_ID'的值传递给“UpdateJQGrid”Controller方法。当我编辑一个单元格并将焦点移动到jggrid内的其他单元格时,会调用UpdateJQGrid。我创建了一个View Model并将ViewModel传递给Controller Method。但我只通过ViewModel对象获取编辑的值而不是所选行的其他值。如果我只能在Controller方法中获得Model_ID的值,那么我的要求将得到解决。 非常感谢任何帮助或提示。
答案 0 :(得分:1)
了解jqGrid 的实现需要将id
属性分配给网格的每一行(对于每个<tr>
元素都非常重要。 <table>
主要数据)。文档使用rowid
作为id
属性的值。如果您使用jqGrid的编辑功能,则严格建议您根据将从数据库获取的 native 值分配id
属性的值(存在于后端)侧)。 rowid
将在jqGrid的大多数回调中使用,并将在编辑期间发布到服务器。 Here您可以在单元格编辑过程中读取将要发送到服务器的信息。
如果来自Model_ID
(或model_id
)列的值唯一且值来自数据库,那么我建议您将该值用作{{ 1}}。要通知jqGrid使用该值,您可以指定rowid
id
(或jsonReader
)的xmlReader
属性的相应值。 id
属性的值取决于从服务器返回的数据的确切格式,用于填充网格。另一种方法是在key: true
(Model_ID
)列中指定model_id
属性。在更改之后,您将看到jqGrid将在单元格编辑期间将Model_ID
(model_id
)列的值发送到服务器。该值将作为id=rowid
发送(作为id
参数)。您可以按使用prmNames: {id: "Model_ID"}
更改参数名称,例如,将id=rowid
更改为Model_ID=rowid
。
还有一句话。如果不是真的需要,我建议你不要使用index
属性。如果您错过了该属性,则将使用name
属性的值。 name
和index
属性的不同值的使用是许多错误的根源,并且无法使用客户端排序,分页和过滤/搜索。