jquery - jqgrid中的"Undefined"消息,"b.jgrid.formatter is undefined"

标签 jquery jqgrid undefined

当我向 jqgrid 发送 JSON 响应时,我收到“未定义”消息,Firebug 告诉我:

b.jgrid.formatter is undefined

[Break On This Error]   

...input===true){b(".ui-pg-input",l).val(a.p.page);h=a.p.toppager?"#sp_1"+m+",#sp_1...

这基本上并没有告诉我太多信息。

当我发送空响应时会发生这种情况:

{"total":0,"page":1,"records":0,"rows":[]}

或回复记录。然后记录在网格中可见。显示“未定义”消息后,我无法浏览页面,当然,代码中出现了错误。

正如 @Oleg 建议的那样,我在这里提供附加信息:

  1. 这些是我正在使用的 JavaScript:
    jquery.validate.min.js
    jquery.validate.unobtrusive.min.js
    jquery-1.5.1.min.js
    jquery-ui-1.8.11.min.js
    jquery.jqGrid.min.js
    ui/jquery.ui.core.js
    ui/jquery.ui.widget.js
    ui/jquery.ui.datepicker.js
  2. 我的 JavaScript 源代码:
    var grid = jQuery("#list").jqGrid({
                datatype: 'json',
    
                caption: 'Transaction Log',
                hiddengrid: 'true',
                postData: {
                    companyId: function () { return $("#SelectedCompany").val(); },
                    userId: function () { return $("#SelectedUser").val(); },
                    dateFromString: function () { return $("#DateFrom").val(); },
                    dateToString: function () { return $("#DateTo").val(); }
                },
                url: '@Url.Action("GetTransactionLogData")',
                mtype: 'GET',
                colNames: ['Ref.', 'TradeDate', 'Status', 'LegalEntity', ...],
                colModel: [
                    { name: 'Reference', index: 'Reference', width: '60' },
                    { name: 'TradeDate', index: 'TradeDate', width: '70' },
                    { name: 'Status', index: 'Status', width: '50' },
                    { name: 'LegalEntity', index: 'LegalEntity', width: '80' },
                    ...
                ],
                pager: $('#pager'),
                rowNum: 10,
                height: '100%'
    
            });
    
  3. 我已经从[此链接][1]下载了最新版本的jqGrid,它说它是**4.4.0**版本。

我该如何解决这个问题?

提前致谢。

最佳答案

jquery.jqGrid.min.js 之前包含 grid.locale-en.js 以使 jqGrid 正常工作,这一点很重要。 p>

此外,我建议您向 jqGrid 添加 gridview: true 选项,并将 pager: $('#pager') 替换为 pager: '#pager ' 因为 jqGrid 只需要寻呼机的 id 选择器。如果您使用 pager: $('#pager') 那么 jqGrid 会将参数替换为 pager: '#pager'。因此,pager: $('#pager') 形式作为 jqGrid 参数实际上没有任何意义。

关于jquery - jqgrid中的"Undefined"消息,"b.jgrid.formatter is undefined",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11258957/

相关文章:

javascript - html 选择标记从选中的复选框更改

javascript - 是否有一种通用的解决方案可以使用 jQuery/JavaScript 循环播放一系列 .png 帧并对其进行动画处理?

reactjs - 检查 React 中是否未定义

javascript - 在稀疏 javascript 数组中查找最大值

javascript - ExtJS Ext.panel.body 未定义.. 为什么?

javascript - jQuery 和 CSS :before

javascript - 仅使用 JavaScript 获取另一个网站元素的内容

jquery - MVC jqgrid最佳实现

javascript - jqGrid showCol/hideCol 排序后不起作用

select - jqgrid单选复选框