2012-02-14 34 views
0

----------這是testA.php --------------------- ----JSON在Internet Explorer中輸出「未定義」而不是其他瀏覽器

[{"msgCD":"OK","msgSTR":"Hi"}] 

----------這是testB.html ------------------------ -

$(document).ready(function(){ $('.submit').click(function(){ 
$.getJSON('testA.php',function(data){ 
    $.each(data,function(i,n){ 
     $('#message').append(n['msgCD']+'</br>'); 
    }); 
}); 
return false;});}); 

隨着Chrome和Firefox,JSON輸出 「HI」,但IE瀏覽器,它不會在所有的工作! OMG :(

+0

如果你在IE中打開F12,看看會發生什麼? – zerkms 2012-02-14 07:48:27

+0

也檢查你的html標記可能是causinf問題,檢查所有的html標記是否正確是否格式化 – 2012-02-14 07:54:27

+0

愚蠢的問題,但你的PHP腳本返回頭提json(而不是文本/ HTML)? 另一件事可能是你的調用是在HTML完成加載之前完成的,並且#message還不存在於dom中,或類似的東西。 – PEM 2012-02-14 09:42:55

回答

0

你有一個對象包裝成一個數組,所以你不能直接訪問對象:

var foo = [{"msgCD":"OK","msgSTR":"Hi"}] 
foo.msgCD // undefined 
foo[0].msgCD // "OK" 

編輯: 我也建議你使用Chrome控制檯,只是做一個控制檯.log(n),你可以瀏覽你的對象。

相關問題