2011-01-19 26 views
5

次の例のようなデータセットがあり、グリッドにロードしたいと思います。しかし、データには名前がないので、どうすればよいか分かりません。jqgridロード配列データ

[[48803,"DSK1","","02200220","OPEN"],[48769,"APPR","","77733337","ENTERED"]] 

答えて

4

あなただけの私はそれがどのように動作するかのライブを示しますthe demoのために作られたlocalReader

localReader: { 
    repeatitems: true, 
    cell: "", 
    id: 0 
} 

次使用される必要なもの。

更新:どのように現実がわかるかは、the documentationほど良くありません。 localReaderを使用すると、カスタム構造のdataパラメータのデータを含むグリッドを埋めるのに役立ちますが、jqGridの別の部分:ローカルソートと検索が正しく動作しません。dataパラメータ。私はそれをバグと解釈します。 pragmatical解決策として、私は名前で

[{id:48803,col2:"DSK1",col3:"",col4:"02200220",col5:"OPEN"}, 
{id:48769,col2:"APPR",col3:"",col4:"77733337",col5:"ENTERED"}] 

のように名前付きオブジェクトの配列にカスタムデータを変換するために、あなたをお勧めしますcolModelの列名に対応しています。フォームにdataパラメータを使用すると、すべてがjqGridで完全に機能します。

更新2the fixed exampleのソースを参照してください。それは私の言いたいことを明確にします。あなたのケースでは、データの変換は、以下の

var myNewData = []; 
for (var i=0,l=mydata.length; i<l; i++) { 
    var d = mydata[i]; 
    myNewData.push({id:d[0],col2:d[1],col3:d[2],col4:d[3],col5:d[4]}); 
} 

についての解決策は、localReaderとのようなので、エレガントではありませんすることができますが、それは制限なしに動作します。

+0

@CKeven:元の解決策でいくつかの問題を見つけ出し、追加の固定デモの例を追加しました。 – Oleg

+0

ありがとうございます。 –

+0

@CKeven:ようこそ! – Oleg

2

まあ、jqgridにはあまりよく慣れていませんが、データを連想配列に割り当ててから読み込むことができます。ここ

例:

http://jsfiddle.net/QWcrT/

関連する問題