Easyui DataGrid 사용자 정의loader 어댑터
1540 단어 datagrid
function myLoader(param,success,error){
var that = $(this);
var opts = that.datagrid("options");
if (!opts.url) {
return false;
}
var cache = that.data().datagrid.cache;
if (!cache) {
$.ajax({
type : opts.method,
url : opts.url,
data : param,
dataType : "json",
success : function (data) {
that.data().datagrid['cache'] = data;
success(bulidData(data));
},
error : function () {
error.apply(this, arguments);
}
});
} else {
success(bulidData(cache));
}
function bulidData(data) {
var temp = $.extend({},data);
var tempRows = [];
var start = (param.page - 1) * parseInt(param.rows);
var end = start + parseInt(param.rows);
var rows = data.rows;
for (var i = start; i < end; i++) {
if(rows[i]){
tempRows.push(rows[i]);
}else{
break;
}
}
temp.rows = tempRows;
return temp;
}
}
구체적인 사용: 데이터grid의loader 속성을 myLoader로 설정하면 됩니다.
백그라운드에서 데이터를 새로 고칠 것을 다시 요청하려면 새로 고침 방법을 사용하기 전에 $("#gridId") 를 실행하십시오.data().datagrid.cache = null; 이 문장은 현재 캐시를 지우는 데 작용합니다.
물론 네가 실현한 것은 전단 페이지다.그러니까 백스테이지에서 돌아온 건 이 결과가 모든 기록을 모은 거야.그리고 모레 페이지 파라미터를 처리하지 마십시오.백그라운드에서 반환되는 결과 형식은 다음과 같습니다. "total": 106, "rows": [{}, {}, {}...],게다가length의 길이는 total의 값과 같아야 합니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
EasyUI Datagrid Datetime(EasyUI DataGrid 시간 포맷)EasyUI DataGrid 시간 포맷 방법 1: 위에서 이러한 방법은 데이터grid에서 시험하였습니다.varobj=eval('('+'{Date: new'+value+'}'+').이 말은 도망갈 수 없다! 다음 방법...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.