【问题标题】:JQuery pagination onPageClick event continuously runningjQuery分页onPageClick事件持续运行
【发布时间】:2016-03-07 19:04:42
【问题描述】:

假设我有一个 ID 为“pagination-demo”的 div,totalPage 设置为 5。这是我初始化它的方法:

function InitializePagination(totalPage) {
    opts = {
        totalPages: totalPage,
        visiblePages: 5,
        onPageClick: function (event, page) {
            request();
        }
    };

    $('#pagination-demo').twbsPagination(opts);
}

ajax请求是:

function request() {
    $.ajax({
        url: "webservice.asmx/CaseStudiesList",
        type: "POST",
        contentType: "application/json; charset=utf-8",
        success: function (r) {

            ('#pagination-demo').twbsPagination('destroy');
            $('#pagination-demo').twbsPagination($.extend(opts, {
                totalPages: 10
            }));
        }
    });
}

正确的结果是将 JQuery 分页插件的 totalPages 设置从 5 更改为 10。

现在,每当我点击不同的页面(从而调用onPageClick 函数)时,request 函数就会被连续调用。为什么以及如何强制它只被调用一次?

【问题讨论】:

  • 为什么每次点击页码都需要调用request();?如果您希望它只被调用一次。只需在$('#pagination-demo').twbsPagination(opts); 之后移动request() 函数
  • @SuTran 实际上request 的函数定义类似于'request(categoryId, pageNo)'。我需要 onPageClick 返回值 - page 并将其传递给请求,如“请求(页面)”

标签: javascript jquery asp.net ajax pagination


【解决方案1】:

这里我可以在回调中看到page 参数:

onPageClick: function (event, page) {
    if(page === this.totalpages){
        request();
    }
}

来自文档:

可用活动:
onPageClick:回调函数
功能参数 >
事件:对象
page : 页数

【讨论】:

  • totalpages 在我的未定义
猜你喜欢
  • 1970-01-01
  • 2015-08-08
  • 2013-09-01
  • 1970-01-01
  • 2018-07-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多