/ / getJSON値を変数に入れる方法 - jquery、json

getJSON値を変数に入れる方法 - jquery、json

私は "jQuery"のgetJson()を理解しようとしています。 返される配列を変数に入れたいのですがわかりません。このコードのスタートボタンをクリックしたときに未定義になります。PHPファイル内のすべてのものが機能するので、問題があるとは思わないある。

function getGameData(){
var difLevel = $("input[@name=difLevel]:checked").val();
var gameData = (function(){
var json = null;
$.getJSON("/Spelling4/core/proof_Test_JSON_process4.php",{difNo : difLevel},function(data){
json = data;
});
return json;
});

return gameData;

}
$("#startButton").click(function(e) {
var gameData = getGameData();
e.preventDefault();
alert(gameData[1]);
});

回答:

回答№1は1

あなたがあなたの関数を呼び出すとき、そしてAjaxリクエストが完了していないときあなたの関数が戻るとき、Ajaxは非同期です null あなたは遅延オブジェクトを使用する必要があります。属性セレクタが間違っていることに注意してください。 @.

var difLevel = $("input[name=difLevel]:checked").val();

回答№2の場合は1

JSONの戻りデータは、指定したjson変数に入ります。ただし、JSONクエリは非同期なので、getGameData()関数が完了したときに応答が返されません。

あなたはそれを返す代わりに$ .getJSON(...)内のJSONデータを使用する必要があります。


回答№3の場合は0

私はあなたが "ゲームデータに関数を格納していると思います。あなたはgameData()で値にアクセスすることができるはずです