【问题标题】:how to set next page option in jqgrid如何在jqgrid中设置下一页选项
【发布时间】:2013-11-15 05:32:25
【问题描述】:

我从 web 服务收到的 JSON 数据是

{"meta": {"limit": 20, "next": "/api/un_bn_in/?offset=20&limit=20&format=json", "offset": 0, "previous": null, "total_count": 439603}, "objects": [{"id": 1, "phrase": "this is bengali test", "resource_uri": "/api/un_bn_in/1/", "verified_by_admin": true, "verified_by_usr": true}] }

转到下一页的网址是“/api/un_bn_in/?offset=20&limit=20&format=json”

我的jsonreader函数如下:-

jsonReader{
    id : "id",
    repeatitems: false,
    root: function (obj) { return obj.objects; },
    records: function (obj) { 
          return 20; },
    total: function (obj) { return obj.meta.total_count; 
}

这里真正的问题是当我按下 jqgrid 生成的下一页按钮 url 时 /api/un_bn_in/?format=json&_search=false&nd=1383576507420&rows=20&page=1&sidx=id&sord=asc

但我想生成“/api/un_bn_in/?offset=20&limit=20&format=json”这个网址,以便我可以进入下一页

对于这个问题的任何帮助将不胜感激

【问题讨论】:

    标签: javascript jquery json jqgrid


    【解决方案1】:

    您可以使用 jqGrid 的 prmNames 选项来重命名标准 jqGrid 选项或删除其他一些选项。例如选项

    prmNames: {nd: null, search: null, sort: null, order: null, rows: "limit" }
    

    将删除一些您不需要的参数并将rows 选项重命名为limit。您将获得类似 /api/un_bn_in/?format=json&limit=20&page=2 的 URL。最后一步是将limitpage 选项替换为/api/un_bn_in/?format=json0&limit=20&offset=20。在这种情况下,您可以另外使用serializeGridData。由此产生的选项可能是关于以下

    url: "/api/un_bn_in/?format=json",
    prmNames: {nd: null, search: null, sort: null, order: null, rows: "limit" },
    serializeGridData: (postData) {
        return {
            limit: postData.limit,
            offset: (parseInt(postData.page, 10) - 1) * postData.limit
        };
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-10
      • 1970-01-01
      • 2011-04-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多