web-dev-qa-db-ja.com

jqgridの「未定義」メッセージ「b.jgrid.formatterは未定義です」

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...

基本的にはあまりわかりません。

これは、空の応答を送信しているときに発生します。

{"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: 'トランザクションログ'、
     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:
     {名前: '参照'、インデックス: '参照'、幅: '60'}、
     {名前: 'TradeDate'、インデックス: 'TradeDate'、幅: '70'}、
     {名前: 'ステータス'、インデックス: 'ステータス'、幅: '50'} 、
     {名前: 'LegalEntity'、インデックス: 'LegalEntity'、幅: '80'}、
     ... 
    、
    ポケットベル:$( '#pager')、
     rowNum:10、
     height: '100%' 
     
    }); 
    
  3. [このリンク] [1]からjqGridの最後のバージョンをダウンロードしましたが、** 4.4.0 **バージョンと表示されています。

どうすればこれを解決できますか?

前もって感謝します。

15
Draško

JqGridを機能させるには、_grid.locale-en.js_ before _jquery.jqGrid.min.js_を含めることが重要です。

さらに、jqGridにはページャーのIDセレクターのみが必要なため、jqGridに_gridview: true_オプションを追加し、pager: $('#pager')を_pager: '#pager'_に置き換えることをお勧めします。 pager: $('#pager')を使用すると、jqGridはパラメーターを_pager: '#pager'_に置き換えます。したがって、pager: $('#pager')の形式は、jqGridパラメーターとしては実際には意味がありません。

30
Oleg