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'); }