2010-02-10 29 views
0

我有一個WCF RESTful服務返回一個複雜的對象以下格式無法訪問它使用下面的代碼訪問它:後,我可以使用JavaScript代碼

if(executor.get_responseAvailable){ var serviceResults = executor.get_responseData();

   var prasevalues = eval('(' + serviceResults + ')'); 

       var mattersResults = prasevalues.GetMatterSearchRESTResult; 
       for (var a = 0; a < mattersResults.length; a++) { 
        alert(mattersResults[a].TotalMatterCount); 
        var pgBreakDown = mattersResults[a].BreakDownBypracticeGroups; 
        for (var b = 0; b < pgBreakDown.length; b++) { 
         alert(pgBreakDown[b].DepartmentName + " " + pgBreakDown[b].Count); 
        } 
       } 
      } 
      return false; 

在調用eval函數之後,我得到一個未定義的值。請幫忙。

+0

未定義的上線需要循環? – 2010-02-10 18:32:18

回答

0

GetMatterSearchRESTResult不是數組,它是一個對象,因此matterResults不會有長度方法。讓GetMatterSearchRESTResult對象的數組:

{"GetMatterSearchRESTResult":[{"BreakDownBypracticeGroups":[],"BreakDownByCountry":[],"TotalMatterCount":0}]}

編輯:或者,如果這是不可能的,你不通過對象

+0

或者使用'var x in ...' – 2010-02-10 19:46:12

+0

我想到了這一點,但是他通過名字引用每個成員,所以沒有真正的需要循環。例如,mattersResults [a] .TotalMatterCount將變成mattersResults.TotalMatterCount – Bob 2010-02-10 20:33:35

相關問題