2012-03-13 6 views
1

私はサーバーから(coldfusionを使用して)ユーザーの役割に応じて編集の表示をフィルタリングまたは追加するために送信したユーザーデータにアクセスしようとしています。ユーザーデータ値の例は、 "all"または "add"または "edit"または "view"です。jsonreaderとJqgridがfirebugのuserdataレスポンスが定義されていません

From firebug an example of userdata looks like 
,"USERDATA":"all" 

jsonreaderは、私はそれを使用する方法を見つけ出すことができるようにユーザデータを見つけようとしています。この

jsonReader: { 
    root: "ROWS", //our data 
       page: "PAGE", //current page 
       total: "TOTAL", //total pages 
       records:"RECORDS", //total records 
    userdata: "USERDATA", 
       cell: "", //Not Used 
    ar_bill_key: "0",//Will default to first column 
    id:"10" 
     }, 

のように見えます。以下のコードは、firebugではundefinedを返します。私はこれが初めてだから、正しく設定されていません。アドバイスをいただければ幸いです。私はあなたがいくつかのエラーを持っているおかげ

答えて

1

を見て、多くの例を試してみましたが、それはまだ

loadComplete:jQuery("#List").getGridParam("userdata") 

    alert("userdata") 

を働いていないしています。最初のパラメータは、'userData'であり、'userdata'ではありません。ですから、

var myData = $("#List").jqGrid('getGridParam', "userData"); 

次のエラーを使用する必要があります値は、サーバから送信取得する:loadCompleteので、コールバック関数

loadComplete:jQuery("#List").getGridParam("userdata") 

が間違っているコードです。

最後のエラーは次のとおりです。サーバーから送信されるuserdataの値はオブジェクトである必要があります。

loadComplete: function() { 
    var myData = $(this).jqGrid('getGridParam', "userData"); 
    alert(myData.status); 
} 
+0

を:だから、あなたが

jsonReader: { ... userdata: "USERDATA", ... } 

を使用する場合は、次のようにloadCompleteから値を表示することができます代わりに

"USERDATA":{"status":"all"} 

または

"USERDATA":{"status":"all"} 

のようなものを配置する必要がありますどうもありがとう! – Sue

+0

@水曜日:あなたは大歓迎です! – Oleg

関連する問題