2012-06-20 17 views
1

創建一個JSON數組我在PHP中像這樣的數組:如何使用在JavaScript從PHP

$arr['test'] = "asd"; 
$arr['test1'] = "asd1"; 
echo json_encode($arr); 

和我得到這個使用jquery職位:

$.post("fillScheda.php",{scheda:num_scheda,id:idCliente},function(msg){ 

}); 

所以msg有我的JSON數組... 我試圖以某種方式來訪問..

alert(msg[0].test); 

alert(msg.test); 

,但結果總是undefined ...我如何獲取值?有人能幫我嗎?謝謝!!!

+0

'msg.test' * should * work。你可以仔細檢查你的服務器是否正在輸出'{「test」:「asd」,「test1」:「asd1」}',而不是通過你的開發者工具中的網絡標籤? – Matt

+0

msg = eval('('+ msg +')');警報(msg.test); – Dev

+0

@Matt我使用警報(味精)測試,該字符串導致是相同的你發佈.. – JackTurky

回答

3

嘗試解析JSON對象

msg = JSON.parse(msg); 
+0

它的作品!非常感謝你! – JackTurky

0

你試過設置JSON的返回值的類型:

$.post("fillScheda.php",{scheda:num_scheda,id:idCliente},function(msg){ 

},'json'); 
0

你應該成爲JSON從PHP文件與此頭:

header('Content-type: application/json'); 

因此,代碼應該是:

$arr['test'] = "asd"; 
$arr['test1'] = "asd1"; 

header('Content-type: application/json'); 
echo json_encode($arr); 
exit();