【问题标题】:jqGrid: Not loading when pager set and array data used, why?jqGrid:使用分页器集和数组数据时不加载,为什么?
【发布时间】:2014-01-15 03:13:14
【问题描述】:

我正在使用数组数据加载支持分页的 jqGrid。如果没有设置 pager 属性,网格会加载数据,如下所示:

底部的蓝色条是分页器元素。但是如果设置了 pager 属性,我会收到以下错误:

Uncaught TypeError: Cannot read property 'integer' of undefined jquery.jqGrid.min.js:131
> a.updatepager jquery.jqGrid.min.js:131
> U jquery.jqGrid.min.js:67
> M jquery.jqGrid.min.js:81
> (anonymous function) jquery.jqGrid.min.js:135
> jQuery.extend.each jquery-1.10.2.min.js:657
> jQuery.fn.jQuery.each jquery-1.10.2.min.js:266
> b.fn.jqGrid jquery.jqGrid.min.js:33
> createGrid

请帮我找出我做错了什么。

HTML:

<div>
    <table id=grid></table>
    <div id=grid_pager></div>
</div>

JS

function createGrid(dataAsArray) {
    $('#grid').jqGrid({
        caption: caption,
        colModel: getColumnModel(),

        scrollOffset: 0,
        hidegrid: true,
        sortorder: 'desc',
        recreateForm: true,
        height: '100%',

        pager: '#grid_pager'
        rowNum: 10,
        rowList: [5, 10, 20, 40, 80],
        viewrecords: true,
        multiselect: true,

        datatype: 'local',
        data: dataAsArray,
        localReader: {
            repeatitems: true,
            cell: '',
            id: 0
        }
    }); 

    $('#grid').jqGrid('navGrid', { edit: true, add: false, del: false, position: 'left' });

    .jqGrid('setGridParam', {
        rowNum: 5,
        rowList: [5, 10, 20, 30, 100, 500]
    }).trigger('reloadGrid');
}

阵列数据

[
    [ 246802, 'ab', 2, 'Invalid amount' ],
    [ '', 12, 3, 'Invalid account' ],
    ...
]

非常感谢您的帮助!

谢谢 维韦克·拉古纳坦

【问题讨论】:

  • 我认为包括grid.locale-en.js(例如here 所述)可以解决您的问题。不是吗?

标签: jqgrid


【解决方案1】:

如果忘记包含grid.locale-en.js(或i18n 目录中的其他文件),通常会发生此类错误。 jqGrid 确实需要该文件。您应该在jquery.jqGrid.min.js(或jquery.jqGrid.src.js)之前包含它。如果您忘记包含 grid.locale-en.jsthe line

fmt = $.jgrid.formatter.integer || {};

将产生您描述的错误,因为$.jgrid.formatter 未定义(它将被定义为in the line)并且表达式$.jgrid.formatter.integer 将产生错误。

【讨论】:

    【解决方案2】:

    试试这个

    pager: $('#grid_pager'),
    

    希望对你有帮助。

    【讨论】:

      猜你喜欢
      • 2011-08-05
      • 2018-07-16
      • 1970-01-01
      • 2014-01-03
      • 1970-01-01
      • 1970-01-01
      • 2017-01-27
      • 2011-08-11
      • 1970-01-01
      相关资源
      最近更新 更多