2016-01-23 40 views
0

我的PHP腳本正在返回我在AJAX調用中收到的JSON對象。在AJAX中使用由PHP返回的Json

$arr[0] = $resp; 
      $arr[1] = $e; 
      return json_encode($arr); 

現在在我的AJAX調用,我試圖讓價值,但我得到的是"/""'"

我正在做這個AJAX。

dd = JSON.stringify(x.responseText); //this is the response from PHP which is correct I have verified. 
alert(dd[0]); //supposed to output $arr[0] but it doesn't 

我在這裏做錯了什麼?

I have seen this on SO

+0

'console.log(dd)' –

+0

@u_mulder問題不在於alert或console.log或打印問題,它關於獲取正確的數據。 –

+1

Console.log,看看你在dd中有什麼。 'JSON.stringify'順便說一句json字符串。也許你需要'JSON.parse'? –

回答

0

我覺得JSON.parse解決您的問題。

JSON.parse()方法將字符串解析爲JSON,可以選擇使用 來轉換解析產生的值。

實例

JSON.parse('{}');    // {} 
JSON.parse('true');   // true 
JSON.parse('"foo"');   // "foo" 
JSON.parse('[1, 5, "false"]'); // [1, 5, "false"] 
JSON.parse('null');   // null 

使用齊磊參數

JSON.parse('{"p": 5}', function(k, v) { 
    if (k === '') { return v; } // if topmost value, return it, 
    return v * 2;    // else return v * 2. 
});       // { p: 10 } 

JSON.parse('{"1": 1, "2": 2, "3": {"4": 4, "5": {"6": 6}}}', function(k, v) { 
    console.log(k); // log the current property name, the last is "". 
    return v;  // return the unchanged property value. 
}); 

價:

JSON.parse()

JSON Example - Object From String