2011-07-11 10 views
0

我有一個C#類,我想轉換爲JSON字符串,將其發送到我的Web客戶端並使用jQuery的,解析成JSON對象的數組。這可能嗎?你可以創建一個JSON字符串,jQuery.each(arg,function(i,val){}可以解析嗎?

這裏是一些示例代碼

class mnuitm 
    { 
     public string prop1; 
     public string prop2; 
     public List<mnuitm> children; 
    } 

I am trying to build a string that looks like this: 
    { 
     "prop1":"value in prop1", 
     "prop2":"value in prop2", 
     "children":[ 
      { 
      "prop1":"value in prop1", 
      "prop2":"value in prop2" 
      }, 
      { 
      "prop1":"value in prop1", 
      "prop2":"value in prop2" 
      } 
     ] 
    }, ... (repeat n times, children may not be there or have any number of child items 

    } //closing bracket 

我的客戶做一個Ajax調用,它返回上述作爲字符串 我試圖使用jQuery解析它,但它不工作。

這是可能的。如果沒有,如何sh我烏爾德做

THX

回答

0

使用jQuery.getJSON()

http://api.jquery.com/jQuery.getJSON/

或者,你可以做在支持它(我知道肯定鉻/ FF4)瀏覽器​​。要獲得更好的跨瀏覽器支持,請使用jQuery.parseJSON()

http://api.jquery.com/jQuery.parseJSON/

+1

使用$ .parseJSON(),但我在我的JSON字符串中有幾個錯誤。要找到這些錯誤並解決它們,我使用了JSON Checker,請從http://www.raboof.com/projects/jsonchecker/下載。 – edepperson

0

實際上,如果你的網絡服務/網頁只是返回的JavaScript塊,則用戶可以直接檢索塊和使用它像一個對象,而無需任何轉換。

這是因爲JSON是原產於JavaScript和you can just call it like below

var obj = { 
     "prop1":"value in prop1", 
     "prop2":"value in prop2", 
     "children":[ 
      { 
      "prop1":"value in prop1", 
      "prop2":"value in prop2" 
      }, 
      { 
      "prop1":"value in prop1", 
      "prop2":"value in prop2" 
      } 
     ] 
    }; 
alert(obj.prop1); 
alert(obj.children[0].prop1); 

或者是你想將其轉換爲JavaScript中不同的類/對象類型? 然後你可以解析它並相應地進行轉換。

相關問題