我的頁面上有一個jqgrid,它在初始化時加載數據的第一頁。如果有更多頁面,則會出現滾動。使用滾動重新加載jqgrid時出現問題:true,啓動多個Ajax調用來加載數據
問題是,如果我向下滾動查看第二個頁面,然後使用更新的url觸發reloadGrid,它實例化兩個具有不同頁碼(1和2)的ajax調用。
結果,網格加載了針對每個調用返回的重複數據。
上面的問題沒有出現,如果我沒有向下滾動第一次加載。
的jqGrid創建代碼:
$("#myGrid").jqGrid({
url: 'test.do',
datatype: 'json',
mtype: 'POST',
colNames: ['', 'Item No.', 'HS Code', 'Goods Description', 'Quantity', 'Value', ''],
colModel: [{name:'itemId', index:'itemId', hidden:true},
{name:'itemNo', index:'itemNo', width:100, align:'center', sortable:false},
{name:'hsCode', index:'hsCode', width:100, align:'center', sortable:false},
{name:'goodsDesc', index:'goodsDesc', width:350, align:'left', sortable:false},
{name:'itemQuantity', index:'itemQuantity', width:110, align:'right', sortable:false},
{name:'itemValue', index:'itemValue', width:110, align:'right', sortable:false},
{name:'action', index:'action', width:60, align:'center', sortable:false}],
width: 1000,
height: 230,
rowNum: 10,
shrinkToFit: false,
viewrecords: true,
emptyrecords: "No Record Found.",
multiselect: false,
scroll: true,
jsonReader: {repeatitems:false, id:"0"}
});
代碼與新的URL重裝格:
newURL = 'test.do?itemNo=3';
jQuery("#myGrid").jqGrid('setGridParam',{url:newURL,datatype:'json'}).trigger("reloadGrid",[{page:1}]);
重裝後AJAX調用:
http://abc.com/test.do?itemNo=3&page=1
http://abc.com/test.do?itemNo=3&page=2
任何機構都有任何想法爲什麼發生?
在「jQuery(」#myGrid「)。jqGrid('setGridParam',{url:newURL,datatype:'json'})。trigger(」reloadGrid「,[{page:1}]);」刪除[{page:1}]並使用reloadGrid。我認爲這會起作用。 –
我試過從'trigger(「reloadGrid」,[{page:1}])''中移除'[{page:1}]'',但它沒有解決問題。 –