2012-02-14 6 views
0

----------これはtestA.phpです--------------------- ----JSONはInternet Explorerで "Undefined"を出力します他のブラウザではありません

[{"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

+0

また、あなたのhtmlマークアップが原因である可能性があります。書式設定されているかどうか –

+0

愚かな質問ですが、あなたのPHPスクリプトがヘッダー(JavaScriptの代わりにtext/html)を参照していますか? もう1つのことは、htmlの読み込みが完了する前にあなたの呼び出しが完了していて、#messageがまだDOMに存在しないか、そのようなものかもしれません。 – PEM

答えて

0

あなたが直接オブジェクトにアクセスすることはできませんので、あなたは、配列にラップされたオブジェクトを持っている:

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

を編集:私はまた、あなたがクロームコンソールを使用することをお勧め 、単にコンソールを作ります.log(n)とあなたのオブジェクトをブラウズすることができます

関連する問題