var CreatePage = function (option) { //$(".table-responsive").responsiveTable(); var config = { PageBar: "#PageBar", PageNo: 1, PageSize: 50, DataCount: 0, PageCount: 0, ToPage: function () { }, Count: 3 }; config = $.extend(config, option); config.PageCount = parseInt((config.DataCount + config.PageSize - 1) / config.PageSize); if (config.PageCount <= 1) { $(config.PageBar).html(""); $(config.PageBar).hide(); return; } $(config.PageBar).html(""); if (config.DataCount > 0) { var clearcss = "
"; var nEnd = config.PageNo * config.PageSize; if (nEnd > config.DataCount) { nEnd = config.DataCount; } var total = "
" + ((config.PageNo - 1) * config.PageSize + 1) + "~" + nEnd + " / " + config.DataCount + "
"; if (config.PageCount <= 1) { total += clearcss; } $(config.PageBar).append(total); } var eRight = $('
') $(config.PageBar).append(eRight); var eFirst = $(''); eFirst.bind("click", function () { config.ToPage(1); }); $(eRight).append(eFirst); var ePrev = $(''); ePrev.bind("click", function () { var page = config.PageNo - 1; if (page < 1) { page = 1; } config.ToPage(page); }); $(eRight).append(ePrev); var nStart = 1; var nEnd = 1; nStart = config.PageNo - config.Count; nEnd = config.PageNo + config.Count; if (nStart < 1) { nEnd = nEnd + (1 - nStart); nStart = 1; } if (nEnd > config.PageCount) { nStart = nStart - (nEnd - config.PageCount); nEnd = config.PageCount; } if (nStart < 1) { nStart = 1; } for (var i = nStart; i <= nEnd; i++) { var eItem = $(''); eItem.bind("click", function () { config.ToPage(Number($(this).attr("data-page"))); }); $(eRight).append(eItem); } var eNext = $(''); eNext.bind("click", function () { var page = config.PageNo + 1; if (page > config.PageCount) { page = config.PageCount; } config.ToPage(page); }); $(eRight).append(eNext); var eLast = $(''); eLast.bind("click", function () { config.ToPage(config.PageCount); }); $(eRight).append(eLast); $(eRight).append($('
')); };