我最近在asp.net应用程序中通过javascript查看动态分页。
我正处于简单分页 - SimplePagination
我可以轻松地将它集成到我的应用程序中,我喜欢它。
但是现在我遇到了一个问题,我不知道如何去做。
我使用的代码是:
$(function () {
var totalPages = @Model.Pagination.TotalPage;
var prevText = "@Model.Pagination.PrevPageTitle";
var nextText = "@Model.Pagination.NextPageTitle";
var currentPage = @Model.Pagination.CurrentPage;
var edges = 1;
//For edge display
var displayedPages = 3;
$(".paging").pagination({
displayedPages: displayedPages,
cssStyle: "light-theme",
edges: edges,
pages: totalPages,
currentPage: currentPage,
hrefTextPrefix : "?pg=",
prevText: prevText,
nextText : nextText,
selectOnClick : false
});
});
在上面的代码中,我坚持使用hrefTextPrefix:“?pg =”,
上面的代码应该适合3种类型的URL:
http://example.com/test.aspx - >当我使用它时它在这里工作正常吗?pg =
http://example.com/test.aspx? - >如果我使用它会失败吗?pg =;它应该只是pg = here
http://example.com/dynamic/?q=train&r=mono - >在这里又失败了?pg =;它应该是& pg = here
现在我的问题是 - 如何使用此hrefTextPrefix,使其始终适用于任何类型的URL。 如果我不需要硬编码“pg”并从URL或其他方式读取它,那将是非常好的。请帮助!!
答案 0 :(得分:0)
我找到了答案。 实际上我总是可以使用"?pg ="它默认适用于所有网址。
我在这样的javascript中处理:
var url = window.location.search;
url = url.replace(/&?((page)|(pg))=([^&]$|[^&]*)/i, ""); //remove page or pg
var queryString = url.substring( url.indexOf('?') + 1 );
queryString = queryString == "" ? queryString : queryString + "&";
...
...
$(".paging").pagination({
displayedPages: displayedPages,
edges: edges,
pages: totalPages,
currentPage: currentPage,
hrefTextPrefix : "?" + queryString + "pg=",
prevText: prevText,
nextText : nextText,
selectOnClick : false,
onInit: function (pageNumber) {
}
});