2016-07-26 21 views
0

1つのAJAXリクエストが機能しますが、2つ目のAJAXリクエストを追加した場合は動作しません。複数のAJAXリクエストを使用している場合

の作業コード(リターン '勝利:3'、予想通り)

function GetMissingData(data, myID) 
 
{ 
 
\t $.when(AJAXf1(myID, '4')).done(
 
\t \t function(a1) 
 
\t \t { 
 
\t \t \t console.log("wins: "+a1[0].DATA); 
 
\t \t } 
 
\t); 
 
    } 
 

 
function AJAXf1(myID, val) 
 
{ 
 
\t return $.ajax({ 
 
\t \t url: "./PHP/ajaxRequests.php", 
 
\t \t dataType: "json", 
 
\t \t data : 
 
\t \t \t { 
 
\t \t \t \t 'moreData' : myID, 
 
\t \t \t \t 'res' : val 
 
\t \t \t } 
 
\t }) 
 
}
と、これは、変数が現在定義されていませんしません( '勝利:未定義'):

function GetMissingData(data, myID) 
 
{ 
 
\t 
 
\t $.when(AJAXf1(myID, '4'), AJAXf1(myID, '4')).done(
 
\t \t function(a1, a2) 
 
\t \t { 
 
\t \t \t console.log("wins: "+a1[0].DATA); 
 
\t \t } 
 
\t); 
 
} 
 

 
function AJAXf1(myID, val) 
 
{ 
 
\t return $.ajax({ 
 
\t \t url: "./PHP/ajaxRequests.php", 
 
\t \t dataType: "json", 
 
\t \t data : 
 
\t \t \t { 
 
\t \t \t \t 'moreData' : myID, 
 
\t \t \t \t 'res' : val 
 
\t \t \t } 
 
\t }) 
 
}

(はい、私は同じ関数を呼び出しています、私はテストしていました。将来的には、私は、関数のパラメータの1つを変更します)

おかげで、あなたの最初の例では

+0

ある場所には「AJAXf1」、別の場所には「AJAXF1」というスペルがあります。 – jfriend00

+0

関数/ varsの名前を単純化するとちょうどそれが起こり、更新されます。 –

答えて

1

あなたは直接、単一のJSオブジェクトとしてAJAXの応答を得ました。 2番目には、JSオブジェクトの配列があります([Object、 "success"、Object]など)。そして私はあなたが別の構造で同じコードを使うことはできないと思います。

+0

このサイトへようこそ。ありがとうございました。良い答えは具体的であり、意見ではなく事実に基づいています。この場合、同じコードが異なる構造で動作しない理由を正確に説明してください。 – bpachev

+0

正しいです、それは今働いています。 varにアクセスするには、このようにしなければなりません:a1 [0] [0] .DATAありがとうございます。私は正しい答えを記しています! –

関連する問題