2013-05-19 231 views
2

我有以下的JSON字符串:獲得價值

{"d":"{\"Foo\":7,\"Bar\":5,\"Foobar\":3}"} 

而在我的js文件中的相應調用:

$.getJSON("Foo.svc/GetSomeFoo", function (response) { 
      alert(response["Foo"]); 
      alert(response["Bar"]); 
      alert(response["Foobar"]); 
     }); 

只是想寫出的值,但不能似乎把它弄出來。 這可能非常簡單,但我在搜索Google時找不到有用的東西。

回答

4

您的JSON嵌入了JSON。你需要做的:

var d = JSON.parse(response.d); 
alert(d.Foo); 
... 
1

由於您有一個名爲d的對象作爲外部對象,因此您需要通過它獲取數據。

對於前:response.d["Foo"]

1

試試這個:

alert(response.d["Foo"]); 

response給你:{"d":"{\"Foo\":7,\"Bar\":5,\"Foobar\":3}"}
response.d會給你:{\"Foo\":7,\"Bar\":5,\"Foobar\":3}
最後response.d["Foo"]response.d.Foo會給你:7

+0

唉唉那麼簡單它是。 'd'是自從去年我與json混淆幾年以來的新事物。謝謝。 – codingjoe

1

你可以做到這一點 -

alert(response.d.Foo);