我的问题现在是在编辑该行时尝试发送该行的ID(editable: false
)。
例如,我有一个带有列userid(editable: false
),username(editable: true
),firstname(editable: true
),lastname(editable: true
)的网格。在编辑行时,网格仅发送参数用户名,名字和姓氏。在服务器端,我需要用户ID知道我已将哪些新值应用于哪些用户。
editUrl看起来像:
editurl : CONTEXT_PATH+'/ajax/admin/savePart.do?category=1',
谢谢
这是完整的代码:
$.jgrid.useJSON = true;
//http://www.trirand.com/jqgridwiki/doku.php?id=wiki%3Acommon_rules
$(document).ready(function() {
//alert(CONTEXT_PATH);
var lastsel;
jQuery("#rowed3").jqGrid(
{
url : CONTEXT_PATH+'/ajax/getPartesByCategory.do?catid=<s:property value="categoryId" />',
//url : '/autoWEB/text.html',
datatype: "json",
ajaxGridOptions: { contentType: "application/json" },
jsonReader : {
root: "rows",
page: "page",
total: "total",
records: "records",
repeatitems: false
},
headertitles: true,
colNames : [ 'ID', 'Pieza', 'Disponible'],
colModel : [ {
name : 'piezaId',
index : 'piezaId',
align : "right",
width : 50,
editable : false,
required : true
}, {
name : 'descripcion',
index : 'descripcion',
width : 390,
editable : true,
required : true
}, {
name : 'disponible',
index : 'disponible',
width : 80,
editable : true,
edittype : 'select',
editoptions:{value:"0:No;1:Si"},
required : true
} ],
rowNum : 20,
rowList : [ 20, 40, 60, 80 ],
pager : '#prowed3',
sortname : 'piezaId',
postData: {piezaId : lastsel},
mtype:"POST",
viewrecords : true,
sortorder : "desc",
onSelectRow : function(id) {
if (id && id !== lastsel) {
jQuery('#rowed3').jqGrid('restoreRow', lastsel);
jQuery('#rowed3').jqGrid('editRow', id, true);
lastsel = id;
}
},
editurl : CONTEXT_PATH+'/ajax/admin/savePieza.do?categoria=<s:property value="categoryId" />',
caption : "Piezas"
});
jQuery("#rowed3").jqGrid('navGrid', "#prowed3", {
edit : false,
add : false,
del : false
});
})
最佳答案
您可以使用
hidden: true, editable: true, editrules: { edithidden: false }, hidedlg: true
在
piezaId
(ID)列的定义中。当前不需要参数hidedlg
,但是如果您决定使用其他jqGrid功能,该参数将很有用。关于javascript - 在JQgrid上将其他参数发送到editurl,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3176157/