所以我创建了这个jqGrid,它从外部数据库加载信息,用户可以使用multiselect选择行,但是对amount字段(网格中的下拉选择字段)所做的更改不需要&#39 ; t在更改页面时仍然存在。另一方面,在更改页面时,选择仍然存在。如何在更改页面时将金额字段中所做的更改保留下来?
编辑:保存所选字段似乎也没有按计划运行,单击“保存”仅保存用户所在页面上的选定字段。其他页面上的选定字段不会随之保存。
下面我从jqGrid中包含了一个代码块。
提前致谢
var selectedRows = {};
$('#addOffConfItemGrid').jqGrid({
url: '/includes/functions/search/itemSearch.php?action=findItem',
datatype : 'json',
colNames: ['Art No', 'Omschrijving', 'Aantal','Prijs p/s'],
colModel: [
{name: 'ItemSearchCode', width: 65, sortable: false, search: true, align: "left", },
{name: 'ItemDescription', width: 120, sortable: false, search: true, align: "left"},
{name: 'amount',width:40, sortable: false, search:false,align:"left",sorttype:"center",editable:true,edittype:"select",editoptions:{ value:GetDValues()},editrules:{required:true}},
{name: 'ItemSalesPrice', width: 45, sortable: false, search: false, align: "right"},
],
filter: true,
pager: 'addOffConfItemGridPager',
onSelectAll: function(rowIds, status) {
if (status === true) {
for(var i = 0; i < rowIds.length; i++) {
selectedRows[rowIds[i]] = true;
}
} else {
for (var i = 0; i < rowIds.length; i++) {
delete selectedRows[rowIds[i]];
}
}
},
onSelectRow: function(rowId, status) {
if (status === false) {
delete selectedRows[rowId];
jQuery('#addOffConfItemGrid').jqGrid('editRow',rowId,false);
} else {
selectedRows[rowId] = status;
jQuery('#addOffConfItemGrid').jqGrid('editRow',rowId,true);
}
},
scrollOffset: 0,
gridview: true,
viewrecords: true,
recreateFilter: true,
emptyrecords: "Geen records gevonden",
width: '730',
rowNum: 21,
height: "auto",
multiselect: true,
gridComplete: function() {
for (var rowId in selectedRows){
$('#addOffConfItemGrid').setSelection(rowId, true);
}
}
});