【问题标题】:JQuery Pagination StartPage - unable to assign startpageJQuery Pagination StartPage - 无法分配起始页
【发布时间】:2016-06-07 20:39:42
【问题描述】:

我正在 ASP.Net 应用程序中使用 JQuery 分页。如果我用下面的代码块这样的数字设置起始页,我会得到正确的起始页。

$('#table_3_Pagination').twbsPagination({
        totalPages: $('#hidUnassignedNoPages').val(),
        visiblePages: 7,
        startPage: 3,
        onPageClick: function (event, page) {
            $('#page-content').text('Page ' + page);
            //__doPostBack('getPage', page)
        }
    });

如您所见,我能够分配正确的页数,但是当我尝试从隐藏字段中动态获取值时,就像我在 hidUnassignedNoPages 中那样,它会抛出一个错误

起始页选项不正确

$('#table_3_Pagination').twbsPagination({
            totalPages: $('#hidUnassignedNoPages').val(),
            visiblePages: 7,
            startPage: $('#hidUnassignedNoPages').val(),
            onPageClick: function (event, page) {
                $('#page-content').text('Page ' + page);
                //__doPostBack('getPage', page)
            }
        });

如果我将值写入控制台或警报消息,那么我会得到正在设置的正确值。

我正在使用这里的库http://esimakin.github.io/twbs-pagination/

在代码中查看传递的值时

 if (this.options.startPage < 1 || this.options.startPage > this.options.totalPages) {
        throw new Error('Start page option is incorrect');
    }

startPage 有正确的值

如果有人能让我知道我在这个问题上哪里出了问题,我将不胜感激。

【问题讨论】:

    标签: javascript jquery asp.net pagination


    【解决方案1】:

    我猜 startPage 的值是一个字符串而不是整数。 您可以尝试在条件检查之前将字符串解析为整数。

    【讨论】:

    • 获取文本值不经过任何传递
    • 你使用的库不会解析你传递的startPage,在库的源码中添加parseInt逻辑。
    • 当我给它一个固定的数字时,它会给我正确的选择页面
    • 是的,固定数字将传递一个数字,但 val() 将传递一个字符串。您可以查看源代码 jquery.twbsPagination.js 的第 21 和 25 行。库将总页数解析为整数,但不解析 startPage,这是库的潜在错误。
    • 我明白你的意思了
    【解决方案2】:

    您需要验证 totalPages 是否大于零,此插件 支持 totalPages 零和负数startPage .

    一个建议是:将 totalPages 设置为一种情况为零。

    【讨论】:

      猜你喜欢
      • 2018-04-06
      • 1970-01-01
      • 1970-01-01
      • 2015-09-03
      • 2022-01-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-21
      相关资源
      最近更新 更多