2

速度から生成したjson文字列を使用してjqGridテーブルをロードしたいと思います。これらはテーブル パラメータです。

var gridParams = {
    datatype: "jsonstring", 
    data: content,
    pager: $('#pagernav'), 
    rowNum: 5000,
    rownumbers: true,
    rowList: [50,100,200,500,1000,2000],
    ignoreCase: true,
    colNames: columns,
    colModel: tableColModel,
}

コンソールに出力されたときの内容と列の値は次のとおりです。

[{"ID":"7", "fname":"Bob", "addr":"18" }, {"ID":"8", "fname":"Sue" }]
["ID", "fname", "addr"]

確かに、グリッドは正しい列で作成されていますが、空です...私が書いたものの何が問題なのですか? 回答ありがとうございます。

4

1 に答える 1

4

まず第一に、の使用の 90% はdatatype: "jsonstring"jqGrid の使用方法が間違っている場合です。元の問題を詳しく説明していませんが、datatype: "json"の代わりに使用することを検討することをお勧めしますdatatype: "jsonstring"

本当に使用する必要がある場合は、 の場合に使用されるオプションではなく、オプションdatatype: "jsonstring"を使用して入力データを提供する必要があります。datastr datadatatype: "local"

からのデータcontentは本当に JSON 文字列 ( ) ですか、それともtypeof content === "string"データをオブジェクト ( typeof content === "string") として持っていますか? 入力データの形式が標準で必要とされていdatatype: "local", data: contentないため(ドキュメントを参照datatype: "local", data: $.parseJSON(content)対応する(ここで例を見てください)datatype: "jsonstring", datastr: content,datatype: "jsonstring"jsonReader

いずれにせよ、オプションを使用して、列のプロパティをgridview: true置き換えpager: $('#pagernav')pager: '#pagernav'定義することをお勧めします。さらに、常に質問のテキストに含める必要があります。のテキストは、コードの方向に進みます。必要な詳細が表示されない場合は、問題の解決策を見つけるために非常に重要です。key: true'ID'colModelcolModel: tableColModel$.jqGrid(myOptions)

于 2013-02-08T14:10:35.390 に答える