1. 먼저 Easyi의 CSS 및 JS 파일을 소개합니다
2. 프론트 데스크에 작성 해야하는 JS
코드 사본은 다음과 같습니다.
// 소스 데이터
함수 async (action, args, 콜백) {
$ .ajax ({
URL : 액션,
유형 : "Post",
데이터 유형 : "JSON",
타임 아웃 : 10000,
데이터 : args,
성공 : 기능 (데이터) {
if (콜백) {
콜백 (데이터);
}
}
});
}
// 데이터 바인딩 및 페이징을 설정합니다
함수 bingdata (pid, args, action, 콜백) {
비동기 (action, args, function (data) {
if (data! = null && data.list! = null) {
var _datacount = data.size; // 총 항목 수
var _data = data.list; // data
if (콜백) {
콜백 (_Data);
}
$ (pid) .datagrid ( 'loaddata', _data);
$ (pid) .datagrid ( 'getpager'). Pagination ({{
pageText 이전 : '사물',
afterpagetext : '총 {pages} pages의 페이지',
DisplayMSG : '현재 {wrome} - {to} 레코드가 총 {Total} 레코드',
Pagesize : Args.Pagesize,
총 : _datacount,
pagenumber : args.pageindex,
Pagelist : Args.Pagelist,
onselectpage : function (pagenumber, pagesize) {
args.pageindex = pagenumber;
args.pagesize = pagesize;
Bingdata (PID, ARGS, ACTION, NULL);
},
onrefresh : function (pagenumber, pagesize) {
args.pageindex = pagenumber;
args.pagesize = pagesize;
Bingdata (PID, ARGS, ACTION, NULL);
}
});
}
});
}
// 양식을 객체로 직렬화합니다
$ .fn.serializeobject = function () {
var obj = {};
$ .Each (this.serializearray (), function (i, o) {
var n = o.name, v = o. value;
obj [n] = obj [n] === 정의되지 않았습니까? 다섯
: $ .isarray (obj [n])? obj [n] .concat (v)
: [obj [n], v];
});
return Json.stringify (OBJ);
};
//너비
함수 fixwidth ( %) {
return document.body.clientWidth * %;
}
// 종료 편집
함수 endedit (vid) {
vid = "#"+vid;
var tb = $ (vid);
var rows = tb.datagrid ( 'getrows');
for (var i = 0; i <rows.length; i ++) {
tb.datagrid ( 'endedit', i);
}
}
함수 getData (obj) {
var url = contextPath+'/FundReatVoucher/FundBatchReatReatVoucherQuery.htm'; // 동작 경로
var args = {};
args.pageindex = 1; // 페이지 인덱스
args.pagesize = 10; // 페이지 용량
if (obj! = null) {// 양식 직렬화의 객체입니다
args.obj = obj;
}
Bingdata ( "#tab", args, url, null);
}
함수 getTab () {
getData ();
var tb = $ ( '#tab');
tb.datagrid ({
제목 : '펀드 리턴 배치 쿼리 결과',
줄무늬 : 사실,
FitColumns : true, // 적응 형 열 크기
Rownumbers : 사실,
nowrap : true, // true로 설정되면 데이터 길이가 열 너비를 초과하면 자동으로 가로 채 웁니다.
줄무늬 : 사실,
너비 : Fixwidth (0.99),
높이 : '430',
SingleSelect : True,
loadmsg : '데이터로드 ...',
열 : [[[
{field : 'interfaceinfocode', 제목 : 'Fund Channel Encoding', 너비 : Fixwidth (0.3), 정렬 : "Center"},
{field : 'RetreatbatchCode', 제목 : 'Fund Return Batch Number', 너비 : Fixwidth (0.2), 편집기 : 'Text', 정렬 : "Center"},
{field : 'Total', 제목 : '총 스트로크 수', 너비 : Fixwidth (0.1), 정렬 : '오른쪽', 편집기 : 'text', 정렬 : "Center"},
{field : 'Totalmoney', 제목 : '총 금액', 너비 : fixwidth (0.1), 정렬 : '오른쪽', 편집기 : 'text', 정렬 : "center"},
{field : 'def2', 제목 : 'Operation', width : fixwidth (0.3), 편집기 : '텍스트', 정렬 : '오른쪽', 정렬 : "Center",
Formatter : 함수 (값, 행, 인덱스) {
var vcode = row.retreatbatchCode;
var e = '<a href = "#"onclick = "todetail ('+index+')"> 세부 사항 </a> | ';;
var d = '<a href = "#"onclick = "AuditBatch ('+index+', 0)"> AuditBatch </a> | ';;
var f = '<a href = "#"onclick = "AuditBatch ('+index+', 1)"> 감사 거부 </a>';
e+d+f를 반환합니다.
}}
]],
onloadSuccess : 함수 (데이터) {
if (data.total == 0) {
}
},
페이지 매김 : 사실,
PageIndex : 1, // 페이지 인덱스
Pagesize : 10, // 페이지 용량
Pagelist : [10,15,20]
})
}
2 무대
코드 사본은 다음과 같습니다.
int currentPage = request.getParameter ( "pageIndex") == null? 1 : integer.parseint (request.getParameter ( "pageIndex"));
// 페이지 당 행 수
int showcount = request.getParameter ( "pagesize") == null? 10 : integer.parseint (request.getParameter ( "pagesize"));
// Pagination Entity
String obj = request.getParameter ( "obj");
if (stringUtils.notblank (obj)) {
FUNDREATVOUCHER = jsonutils.toobject (OBJ, FundreAtVoucherParam.class); // 양식 직렬화 json 객체는 엔티티로 변환됩니다
}
out = response.getWriter ();
List <FUNDREATVOUCHER> FRVS = FUNDDREATVOUCHERSERVICE.FINDALLFUNDREATEATVOUCHER (페이지, FUNDREATVOUCHER);
int total = FundlArteatVoucherservice.findallFundreatVoucher (getTotal (), FundReatVoucher) .size (); // 데이터 크기
jsonobject json = new jsonobject ();
JSON.PUT ( "List", FRVS); // 데이터, 여기에 풋 키는 목록이어야합니다. 변경되면 BingData에서 데이터를 변경해야합니다.
JSON.PUT ( "size", Total);
out.print (JSON);