2016-04-26 8 views
-2

JSON文字列からすべての情報を読み込もうとしています。私はAJAXの助けを借りてそれを読むことも試みています。目的はinnerHTMLに情報を入力することですが、何も機能しません。AJAXとJSONを結合するには?

コードにはどのような問題があり、どのように解決できますか?

function getResults() { 

    var obj = [ 
     { "number": "Bob", "position": "forward", "shoots": "left" }, 
     { "number": "John", "position": "forward", "shoots": "right" } 
    ]; 


    var xhttp = new XMLHttpRequest(); 
    xhttp.onreadystatechange = function() { 
     if (xhttp.readyState == 4 && xhttp.status == 200) { 
      var return_data = request.responseText; 
      document.getElementById("sportresults").innerHTML = return_data; 
     } 
    }; 
    xhttp.open("GET", obj, true); 
    xhttp.send(); 
} 
+0

のようなコードを呼び出すことができます:あなたは、コンソールにエラーを得るのですか? URLにGETリクエストを送信しますか?あなたも応答を得ますか? – ochi

+0

全く応答がありません。 – thehulk

+0

JSONをサーバーに送信しようとしているのですか、またはサーバーから受信しようとしていますか?要素の中にJSONとして 'obj'を表示したいだけなら、Ajaxは必要ありません。 –

答えて

1

あなたは

を、ファイルにあなたのJSONを書き込む機能を開くには、ファイルのパスを与える必要がありますオープンの構文は 無効オープン( のDOMString方法、 のDOMStringのURL、 オプションのブール非同期、 ですオプションのDOMStringユーザー DOMStringパスワード(オプション) );

は、あなたが最初に

について混乱かもしれないいくつかのことを打破レッツ https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest

1

を参照してください、私はあなたがAJAXとJSONが混ざっ持っていると思います。 AJAX(Asynchronous Javascript and XML)はJavaScript呼び出しを非同期に行い、JSON(JavaScript Object Notation)はデータ形式です。

あなたのコードでオブジェクトobjを取得する呼び出しを行うことはできません。既にアクセスできます。必要に応じて変数objを使用してください。あなたは、要求がJSONを取得するために必要がある場合

ただ、これを書き、

document.getElementById("sportresults").innerHTML = obj; 

obj値は、それ自身のファイルまたはパスにすることができ、あなたはobj.jsonにそれを置くことができます。

ファイルがobj.jsonと呼ばれていると仮定すると、この

[ 
    { "number": "Bob", "position": "forward", "shoots": "left" }, 
    { "number": "John", "position": "forward", "shoots": "right" } 
] 

ように見えるあなたはその後、先頭からこの

function getResults() { 

var xhttp = new XMLHttpRequest(); 
xhttp.onreadystatechange = function() { 
    if (xhttp.readyState == 4 && xhttp.status == 200) { 
     var return_data = request.responseText; 
     document.getElementById("sportresults").innerHTML = return_data; 
    } 
}; 
xhttp.open("GET", 'obj.json', true); 
xhttp.send(); 
} 
関連する問題