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