난 당신이 loadonce: true
매개 변수를 사용한다고 가정. 서버에서 데이터를 다시로드하려면 datatype
: 'json'(질문에서 코드 부분에있는 것처럼 setGridParam({datatype:'json'})
을 사용하고 setGridParam({datatype:json})
을 사용하지 않았 으면합니다.). 데이터가 서버 에서로드 된 후 로컬 데이터의 첫 번째 페이지가 표시됩니다.
문제를 해결하려면 loadComplete
안에 그리드를 한 번 더 다시로드해야하지만 이제 로컬 그리드를 다시로드해야합니다. 더 재로드 루프가없는 및 현재 datatype
인지 'JSON'을 확인해야 지역 페이징을 할 수 있도록 :
var myGrid = $("#mygrid"), currentPage = 1;
...
myGrid.jqGrid({
// all grid parameters and additionally the following
loadComplete: function() {
if (this.p.datatype === 'json' && currentPage !== 1) {
setTimeout(function() {
myGrid.trigger("reloadGrid",[{page:currentPage}]);
}, 50);
}
}
});
....
currentPage = 5;
myGrid.setGridParam({datatype:'json'}).trigger("reloadGrid",[{page:currentPage}]);
데모
here를 참조하십시오.
서버 측 코드를 표시 할 수 있습니까? 어쨌든 jqGrid를 다시로드하려면 다음을 수행하십시오. $ ("# mygrid"). trigger ('reloadGrid', [{page : 5}]); – LeftyX