jqgrid中的"未定义"消息,"b.jgrid.formatter未定义"

Dra*_*ško 15 jquery undefined jqgrid

当我向jqgrid发送JSON响应时,我收到"undefined"消息,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...
Run Code Online (Sandbox Code Playgroud)

这基本上没有告诉我多少.

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

{"total":0,"page":1,"records":0,"rows":[]}
Run Code Online (Sandbox Code Playgroud)

或回复记录.然后在网格中可以看到记录.在显示"未定义"消息后,我无法浏览页面,当然,代码中出现了错误.

正如@Oleg建议我在这里提供更多信息:

  1. 这些是我正在使用的javascripts:
    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. 我从[this link] [1]下载了jqGrid的最新版本,它说的是**4.4.0**版本.

我怎么解决这个问题?

提前致谢.

Ole*_*leg 30

grid.locale-en.js jquery.jqGrid.min.js使jqGrid工作之前包含它是很重要的.

另外我建议你添加gridview: true选项到jqGrid并替换pager: $('#pager')pager: '#pager'因为jqGrid只需要寻呼机的id选择器.如果你使用pager: $('#pager')那么jqGrid会将参数替换为pager: '#pager'.所以表单pager: $('#pager')作为jqGrid参数确实没有意义.