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が提案したように、私はここに追加情報を提供しています:
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
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%' });
どうすればこれを解決できますか?
前もって感謝します。
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パラメーターとしては実際には意味がありません。