2012-08-06 77 views
0

我試圖數組值傳遞到的jqGrid JSON數組值。後文中,「排名」值是另一個陣列,我想將每個元件(秩和分數)陣列中的一個單獨的列中:如何顯示在jqGrid的

使用Javascript:

$(document).ready(function(){   
     jQuery("#ggp_info").jqGrid('GridUnload'); 
     jQuery("#ggp_info").jqGrid({ 
      data: jsonObj.entry, 
      datatype: "local", 
      colModel:[ 
       {name:'id',index:'id', width:55, align:"center"}, 
       {name:'name',index:'name', width:110, align:"center"}, 
       {name:'sort',index:'sort', width:50, align:"center"}, 
       {name:'ranking.rank',index:'ranking.rank', jsonmap:'ranking.rank', width:250, align:"center"} 
      ], 
      rowNum:7, 
      sortname: 'id', 
      viewrecords: true, 
      sortorder: "desc", 
      height: "100%", 
      shrinkToFit: false, 
      caption:"Leaderboard" 
     }); 
    }); 

的jsonObj值作爲如下:

{"entry": 
[{"id":"10000935","name":"Queen","sort":"0","ranking":[{"rank":"1","score":"60"}]}, 
{"id":"10000936","name":"Level1","sort":"0","ranking":[{"rank":"1","score":"700"}]}] 
+0

所以我被卡在了同樣的問題,我想的jqGrid不支持子對象,所以我有這個employee.Name和employee.Id ID我格。那對我不起作用。我最終創建了我的emplyoee的dto,並將數據employeeName和employeeId明確地發送到網格,在您的情況下,您不能創建排名的dto並將rankingRrank和rankingScore與其他數據一起發送。我知道這種方法,可能是oleg知道如何將子對象綁定到網格。以及如果你想要這種方法的代碼,我可以幫你。 – 2012-08-07 04:30:07

回答

0

首先,你必須分析你的JSON對象,並把它分解檢索分離等級和分數 然後,你必須創建類似如下兩列:

{name:'rank',index:'rank', editoptions:{value:rankArray}} 
{name:'scores',index:'scores', editoptions:{value:scoresArray}} 

所以,你將投入rankArray等級和分數scoresArray