我有一個奇怪的。在將數據存儲從會話更改爲oracle後,當我點擊'inlineNav'上的Edit時,它總是通過「add」操作進入服務器。任何想法,爲什麼這可能發生?Jqgrid在編輯操作中發送「添加」爲oper =「添加」爲什麼?
$("#assessmentproduct").jqGrid({
url: 'orthofixServices.asmx/GetProductList',
colNames: ['id', 'Product Description', 'Commission Rate'],
colModel: [
{ name: 'id' },
{ name: 'description', index: 'desc', width: 170, editable: true },
{ name: 'commissionrate', index: 'com', width: 80, editable: true, unformat: percentUnFormatter, formatter: percentFormatter, editrules: { number: true} }
],
serializeRowData: function(data) {
var params = new Object();
params.id = 0;
params.prdid = parseInt($("#prdid").val());
params.description = data.description;
params.commissionrate = data.commissionrate;
return JSON.stringify({ 'passformvalue': params, 'oper': data.oper, 'id': data.id });
},
mtype: "POST",
rowNum: 4,
height: 93,
width: 400,
pager: '#assessmentpager',
editurl: "orthofixServices.asmx/ModifyProductList"
});
$("#assessmentproduct").jqGrid('navGrid', '#assessmentpager', { add: false, edit: false, del: true, refresh: false, search: false }, {}, {}, { serializeDelData: function(postData) {
return JSON.stringify({ 'passformvalue': null, 'oper': postData.oper, 'id': postData.id });
}
});
$("#assessmentproduct").jqGrid('inlineNav', '#assessmentpager', { addParams: { position: "last", addRowParams: {
"aftersavefunc": function() { var grid = $("#assessmentproduct"); reloadgrid(grid); }
}
}, editParams: { "aftersavefunc": function() { var grid = $("#assessmentproduct"); reloadgrid(grid); } }
});
默認發佈'inlineNav'數據爲'myCoumnName = maData&oper = add&id = new_row'。所以這些操作的價值將不會被引用。如果你有另一個結果,你應該包含顯示你如何定義jqGrid的JavaScript代碼。 – Oleg 2012-03-08 17:24:12
在serializeRowData上調試javascript時:function(data){... data.oper =「add」。即使當我處於編輯模式。所以它不是序列化,它是網格表示它在這一點上的狀態!.. – 2012-03-08 18:48:09