0

プロジェクトで jQGrid の最新バージョンを使用しています。以下は、構成した完全な構成です。

jQuery("#list").jqGrid( {
        url : 'Link.do?method=findAllBrand',
        mtype : 'GET',
        height : 350,
        datatype : "xml",
        colNames : [ 'Name' ],
        colModel : [ {
            name : 'name',
            index : 'name',
            width : 620
        } ],
        rowNum : 10,
        rowList : [ 10, 20, 30 ],
        sortname : 'id',
        sortorder : "desc",
        viewrecords : true,
        multiselect : true,
        imgpath : 'themes/base/images',
        caption : "Brand (s) Summary Grid",
        pager : #pager,
        cache : false,
        onSelectRow : function(id) {

        }
    });

サーバーから次のデータを xml 形式で取得しています。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?><rows><page>1</page><total>4</total><records>75</records><row id="BRD00005"><cell>AEG</cell></row><row id="BRD00010"><cell>ARC</cell></row><row id="BRD00006"><cell>Aga</cell></row><row id="BRD00007"><cell>Allenzi </cell></row><row id="BRD00008"><cell>Amana</cell></row><row id="BRD00009"><cell>Andi</cell></row><row id="BRD00011"><cell>Arda</cell></row><row id="BRD00012"><cell>Ariston</cell></row><row id="BRD00013"><cell>Asko</cell></row><row id="BRD00014"><cell>Baumatic</cell></row><row id="BRD00015"><cell>Bendix</cell></row><row id="BRD00003"><cell>Blanco</cell></row><row id="BRD00001"><cell>Bosch</cell></row><row id="BRD00004"><cell>Chef</cell></row><row id="BRD00016"><cell>Damani</cell></row><row id="BRD00017"><cell>Davell</cell></row><row id="BRD00018"><cell>Delonghi</cell></row><row id="BRD00019"><cell>Dishlex</cell></row><row id="BRD00020"><cell>Electrolux</cell></row><row id="BRD00021"><cell>Emilia</cell></row><row id="BRD00022"><cell>Euro</cell></row><row id="BRD00023"><cell>Eurolec</cell></row><row id="BRD00024"><cell>Euromaid</cell></row><row id="BRD00002"><cell>F&amp;P</cell></row><row id="BRD00027"><cell>FP</cell></row><row id="BRD00025"><cell>Fagor</cell></row><row id="BRD00026"><cell>Fisher And Paykel</cell></row><row id="BRD00028"><cell>Franke</cell></row><row id="BRD00030"><cell>GE</cell></row><row id="BRD00034"><cell>GVA</cell></row><row id="BRD00029"><cell>Gaggenau</cell></row><row id="BRD00031"><cell>Glem </cell></row><row id="BRD00032"><cell>Glem Gas</cell></row><row id="BRD00033"><cell>Glemgas</cell></row><row id="BRD00035"><cell>Haier</cell></row><row id="BRD00036"><cell>Hisense </cell></row><row id="BRD00037"><cell>Hitachi</cell></row><row id="BRD00038"><cell>Hoover</cell></row><row id="BRD00039"><cell>Hotpoint</cell></row><row id="BRD00040"><cell>IAG</cell></row><row id="BRD00041"><cell>Ilve</cell></row><row id="BRD00042"><cell>Indesit</cell></row><row id="BRD00043"><cell>Jenn Air</cell></row><row id="BRD00044"><cell>Kelvinator </cell></row><row id="BRD00045"><cell>Kleenmaid</cell></row><row id="BRD00047"><cell>LG</cell></row><row id="BRD00046"><cell>La Germania</cell></row><row id="BRD00048"><cell>Liebherr</cell></row><row id="BRD00049"><cell>Linea</cell></row><row id="BRD00050"><cell>Lofra</cell></row><row id="BRD00051"><cell>Maytag</cell></row><row id="BRD00052"><cell>Midea</cell></row><row id="BRD00053"><cell>Miele</cell></row><row id="BRD00054"><cell>NEC</cell></row><row id="BRD00055"><cell>Neff</cell></row><row id="BRD00056"><cell>Nobel</cell></row><row id="BRD00057"><cell>Omega</cell></row><row id="BRD00058"><cell>Onix</cell></row><row id="BRD00059"><cell>Panasonic </cell></row><row id="BRD00060"><cell>Robinhood</cell></row><row id="BRD00061"><cell>Sagi</cell></row><row id="BRD00062"><cell>Samsung</cell></row><row id="BRD00063"><cell>Seimen </cell></row><row id="BRD00064"><cell>Sharp</cell></row><row id="BRD00065"><cell>Simpson</cell></row><row id="BRD00066"><cell>Smeg</cell></row><row id="BRD00067"><cell>St George</cell></row><row id="BRD00068"><cell>Technika</cell></row><row id="BRD00069"><cell>Techno</cell></row><row id="BRD00070"><cell>Technogas</cell></row><row id="BRD00071"><cell>Teka</cell></row><row id="BRD00072"><cell>Thor</cell></row><row id="BRD00073"><cell>Vintec</cell></row><row id="BRD00074"><cell>Westinghouse</cell></row><row id="BRD00075"><cell>Whirlpool</cell></row></rows>

他の投稿でユーザー Oleg が提案したように、ページャーのパラメーターを変更しましたが、それでもページャーは期待どおりに動作しません。最初はレコードの 10 個のデータのみが表示されますが、[次へ] をクリックしても何もしません。

what did i do wrong

ありがとうミヒル・パレク

4

1 に答える 1

1

オプションの値はpager引用符で囲む必要があります: pager : "#pager". datatype: "xml" なしで 使用しloadonce: trueます。この場合、サーバー ( url : 'Link.do?method=findAllBrand') はページングとソートを担当します。ユーザーが次のページをクリックすると、対応するパラメーターを使用してサーバーに新しい要求が送信されますpage=2

通常、サーバーは対応するアイテムの数pagerowsパラメーターを返す必要があります。XML 応答には、さらに多くの項目が含まれています。サーバーは、要求されたページから独立したすべてのアイテムを返すと思います。を含める必要がある場合loadonce: true。この場合、クライアント コード (jqGrid の JavaScript コード) がページングと並べ替えを行います。オプションを使えばloadonce: trueパーツを外すことができます

<page>1</page><total>4</total><records>75</records>

サーバーから返された XML データから。

さらに、可能であれば、XML の代わりに JSON を使用するように変更することを検討することをお勧めします。次のようなアイテムの表現を減らすことができる場合

<rows>
<row id="BRD00022"><cell>Euro</cell></row>
<row id="BRD00002"><cell>F&amp;P</cell></row>
<row id="BRD00026"><cell>Fisher And Paykel</cell></row>
</rows>

[["Euro","BRD00022"],["F&P","BRD00002"],["Fisher And Paykel","BRD00026"]]

そのため、転送されるデータのサイズを減らすことができます。

さらに、前の質問へのコメントで書いたように、グリッドに名前の列がないことを確認するためsortname : 'id'に置き換える必要があります。このオプション はおそらく削除する必要があります。sortname : 'name'"id"sortorder : "desc"

非推奨のオプション imgpathを削除cacheし、jqGrid にも存在しないオプションを削除する必要があります。gridview: trueその代わりに、オプションとを追加することを強くお勧めしますautoencode: true。使用する場合は、HTML エンコーディング (サーバー側で変換)をautoencode: true使用する必要はありません。F&PF&amp;P

更新:デモでは、グリッドがどのように見えるかを示します。

ここに画像の説明を入力

ツールバー フィルターと高度な検索をグリッドに含めて、loadonce: true.

于 2012-11-22T06:16:35.523 に答える