function paging(options) {
loading($("#"+options["id"]));
//默认参数
var defaults = {"curr": 1,"class":"display_form common_list_table","style":""};
//获取调用控件ID
var opts = $.extend({}, defaults, options);
opts["table_id"] = opts["id"]+"_layer_table";
opts["page_id"] = opts["id"]+"_layer_page";
//删除页面已存在的容器
$("#" + opts["table_id"]).remove();
$("#" + opts["page_id"]).remove();
//追加table容器
$("#" + opts["id"]).append('
');
//追加分页容器
$("#" + opts["table_id"]).after('');
//追加th
if(("columns" in options) && options.columns.length>0){
var $tr = $("
");
$.each(options.columns, function (i,item) {
var $th = $(" | ");
//标题
if("title" in item){
$th.html(item["title"]);
}
//样式
if("class" in item){
$th.addClass(item["class"]);
}
//宽度
if("width" in item){
$th.attr("width",item["width"]);
}
$tr.append($th);
});
$("#"+opts["table_id"]).append($tr);
}
//调用异步分页
asynchronous_page(opts);
}
function asynchronous_page(opts) {
var param = $.extend({}, {page: opts.curr || 1, pageSize: opts.pageSize}, opts.param || {});
$.post(opts.url, param, function (res) {
//清空上一页数据
$("#"+opts["table_id"]).find("tr:gt(0)").remove();
//分页内容组装
if(("content" in res) && res.content.length>0){
$.each(res.content, function (i,data) {
var $tr = $("
");
$.each(opts.columns, function (j,item) {
var $td = $(" | ");
if("class" in item){//td class
$td.addClass(item["class"])
}
if("customize" in item){//自定义td内容
var index = ((opts["curr"]-1) * opts.pageSize) + i ;
$td.html(item.customize(index ,data));
}else {
if("field" in item){
$td.text(data[item.field]);
}
}
$tr.append($td);
});
$("#"+opts["table_id"]).append($tr);
});
}else {
var $tr = $('暂无数据 |
');
$("#"+opts["table_id"]).append($tr);
}
$("#"+opts["table_id"]).append($tr);
//显示分页
laypage({
cont: opts["page_id"], //容器。值支持id名、原生dom对象,jquery对象。【如该容器为】:
pages: res.totalPages, //通过后台拿到的总页数
curr: opts.curr || 1, //当前页
skip:true,
jump: function (obj, first) { //触发分页后的回调
if (!first) { //点击跳页触发函数自身,并传递当前页:obj.curr
opts["curr"] = obj.curr;
asynchronous_page(opts);
}
}
});
loaded($("#"+opts.id));
},'json');
}