【问题标题】:How to pass generic hrefPrefix in SimplePagination Jquery?如何在 SimplePagination Jquery 中传递通用 hrefPrefix?
【发布时间】:2015-02-08 08:11:04
【问题描述】:

我最近正在研究通过 javascript 在 asp.net 应用程序中进行动态分页。

我正在使用简单分页 - 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= 这里

http://example.com/dynamic/?q=train&r=mono -> 在这里再次失败 ?pg= ;这里应该是 &pg=

现在我的问题是 - 如何使用此 hrefTextPrefix 以使其始终适用于任何类型的 URL。 如果我不需要硬编码“pg”并从 URL 或其他方式读取它,那就太好了。请帮忙!!

【问题讨论】:

    标签: jquery asp.net url pagination simplepager


    【解决方案1】:

    我找到了答案。 实际上我总是可以使用 "?pg=" 并且默认情况下它适用于所有 URL。

    我在 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) {
    
            }
        });
    

    【讨论】:

    • @A.Wolff - 很抱歉没有详细发布答案。我现在已经发布了。我试图解决这个问题,我找到了解决方案。我应该解释我所做的正确 - 我的错!
    猜你喜欢
    • 2014-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-17
    • 2014-12-02
    • 1970-01-01
    相关资源
    最近更新 更多