2009-09-06 161 views
0

嘗試獲取JSON輸出以使用jqGrid的'userdata'選項。如何生成JSON字符串數組?

在jqGrid PDF中給出的例子是產生一個像這樣的JSON結果;

{ total: "xxx", 
    page: "yyy", 
    records: "zzz", 
    userdata: {totalinvoice:240.00, tax:40.00}, 
    rows : [ 
     {id:"1", cell:["cell11", "cell12", "cell13"]}, 
     {id:"2", cell:["cell21", "cell22", "cell23"]}, 
    ] 
} 

我試圖讓userdata部分像這樣(沒有運氣)。

var jsonData = new 
{ ... 
    userdata = new string[] {"totalinvoice:240.00", "tax:40.00" } 
    ...} 
return Json(jsonData); 

但是,這回來的JSON結果看起來像這樣;

userdata":["totalinvoice:240.00","tax:40.00"] 

我相信這是一件小事,但我似乎無法弄清楚如何獲得System.Web.JSON.JsonResult調用返回的值由jqGrid的預期。

回答

3

嘗試:

var jsonData = new 
{ ... 
    userdata = new { totalinvoice = 240.00, tax = 40.00 } 
    ...} 
return Json(jsonData); 

在JSON符號,{}爲對象,[]是用於陣列。如果期望花括號中的內容,則應該使用這些屬性序列化對象。

+0

woot!正確的,它的工作。 – CmdrTallen 2009-09-06 23:56:39