0

jqGridの構成で問題が発生しています。この構成を使用してナビゲーションバーをアクティブ化しようとしています:

$(function(){ 
    $("#list").jqGrid({
        url:'test.xml',
        datatype: 'xml',
        mtype: 'GET',
        colNames:['Name','Last Name', 'Id Nbr'],
        colModel :[ 
           {name:'name', index:'name', width:200}, 
           {name:'lastName', index:'lastName', width:200}, 
           {name:'idnbr', index:'idnbr', width:60}
        ],
        pager: '#pager',
        rowNum:10,
        rowList:[10,20,30],
        sortname: 'name',
        sortorder: 'desc',
        viewrecords: true,
        gridview: true,
        loadonce: true,
        sortable: true,
        rownumbers: true,
        height: '100%',
        width: '800',
        caption: 'My first grid'
    }); 
}); 
jQuery("#list").jqGrid('navGrid','#pager',{edit:true,add:true,del:true});

そして私のHTMLコードは次のようになります:

<table id="list"><tr><td/></tr></table> 
<div id="pager"></div> 

ナビゲーションバーの設定方法についてStackoverflowで多くの回答を読みましたが、バーの追加、編集、削除、検索、更新ボタンを取得できず、ページのみが処理されます。

このボタンを取得しようとしましたが、今まで結果が得られなかったため、コードに何かが欠けているかどうかを知りたいのですが。

よろしくお願いします

4

1 に答える 1

2

エラーは、のnavGrid で呼び出すことです$(function(){/*it should be here*/});。したがって、このメソッドは、グリッドが作成される前だけでなく<table><page>要素がページに配置(ロード)される前にイベントが呼び出される可能性があります。

1行上の呼び出しをnavGrid内側に移動するだけで$(function(){/*it should be here*/});(これは、jQuery.ready$(document).ready(function () {/*the same code inside*/})を参照してください)、コードは期待どおりに機能します。

于 2012-04-22T21:18:25.490 に答える