/*javascript 分页*/ (function(win, list){ win.page = { _list : '', pag
/*javascript 分页*/ (function(win, list){ win.page = { _list : '', pageCount : 0, // 所有数据的总数 singleNum : 2, // 每页显示的条数,默认为10 pageNum : 0, // 页数 currentPage : 1, /** * 初始化数据 */ init : function(){ this._list = this.toArray(list); this.calculatePage(); this.getData(); this.pageClick(); }, /** * 将传入的json对象转化为数组 * @param list * @returns {Array} */ toArray : function(list){ var listArr = new Array(); for (var i in list) listArr.push(list[i]); return listArr; }, /** * 计算页码 * @returns {*} */ calculatePage : function(){ this.pageCount = this._list.length; if (this.pageCount == 0){ return fales; } this.pageNum = Math.ceil(this.pageCount / this.singleNum); }, /** * 获取hash值中的页码 * @returns {Number} */ gethash : function(){ return parseInt(window.location.hash.substr(2)); }, /** * 分割要渲染的数据 */ getData : function(){ this.currentPage = this.gethash()?this.gethash():1; if (this.currentPage > this.pageNum){ this.currentPage = this.pageNum; } var start = (this.currentPage - 1) * this.singleNum; var end = this.currentPage * this.singleNum; var renderData = this._list.slice(start, end); this.renderPage(renderData); }, /** * 渲染数据到页面表格中 * @param data */ renderPage : function (data) { var str = ''; for(var i = 0; i < data.length; i++){ // '<td>'+data[i].scheme+'</td>'+ // '<td>'+data[i].http+'</td>'+ str += '<tr><td>'+data[i].id+'</td>'+ '<td>'+data[i].name+'</td>'+ '<td>'+data[i].edit_time+'</td>'+ '<td>'+data[i].edit_user+'</td><td>'; if(data[i].status == 0){ str += '未发布</td><td>' + '<a href="javascript:void(0)" data-id="'+data[i].id+'" data-status="1" class="edit_status">发布</a>'; }else{ str += '已发布</td><td>' + '<a href="javascript:void(0)" data-id="'+data[i].id+'" data-status="0" class="edit_status">下线</a>'; } str += ' <a href="/tv/bang/edit_subject.php?id='+data[i].id+'">编辑</a></td></tr>'; $('#subject_list').html(str); } this.renderPageNum(); console.log(data); }, /** * 渲染底部页码 */ renderPageNum : function (){ if (this.pageNum == 1){ return ; } var pageStr = ''; for (var j=1; j <= this.pageNum; j++){ if (j == this.currentPage){ pageStr += '<a href="javascript:void(0)" class="current">'+j+'</a>'; }else{ pageStr += '<a href="#p'+j+'">'+j+'</a>'; } } $('.page_selector').html(pageStr); }, /** * 页码点击监控 */ pageClick : function (){ $('.page_selector a').live('click',function () { window.location.reload(); }); } }; // var pageCount = list.length(); page.init(); })(window, window.subject_list);