2016-09-17 59 views
1

我在阿賈克斯調用裏面有一個Ajax-Call,一切似乎都能正常工作。在控制檯中,我可以看到,兩個調用都被執行並獲得回報。阿賈克斯裏面的阿賈克斯莫名其妙的行爲

但不知何故,我不能從第二個呼叫使用返回的結果(?)

$.ajax({ 
      type: "POST", 
      url: "register/checkEmail/"+email,     
      success: function(result){ 

       if(result == "TRUE") {      
        $('#regMsg').html('Ein User mit dieser Email ist bereits registriert!'); 
        $('#regMsg').slideDown(); 

       // NO ERROR - REGISTER USER 
       } else {       
        $('#regMsg').slideUp();    
        var inputs = $('#regForm :input').serializeArray(); 

        alert('ok'); 
        $.ajax({ 
         method: "POST", 
         url: "register/save", 
         data: inputs, 
         dataType: 'json', 
         success: function(result){ 
          alert('ddok'); 
         } 
        }); 

       }      

      } 
     }); 

被beeing顯示第一alert(),所述secont不是,雖然第二呼叫被正確執行(? ) 這是爲什麼?

+0

使用Firebug或Chrome Inspector驗證第二次調用是否成功。 –

+0

我會檢查鉻devtools中的網絡,看看是否正確解決服務的第二個POST註冊/保存。 –

+0

「輸入」在哪裏定義?嘗試在第二個'$ .ajax()'調用中包含'error'選項。 – guest271314

回答

0

簡單 - 第二個調用的響應沒有返回到ajax,即錯誤/失敗。

添加錯誤處理零件後成功找到響應。 成功後添加

,error: function(result){ 
    alert('error'); 
    console.log(result); 
} 

如果這是不是這個原因,那麼數據類型:「JSON」,應該是罪魁禍首爲你的反應不會是JSON格式!

+0

中描述的問題嗨,你是怎麼意思的? ..我添加了錯誤處理到第二個Ajax,它返回給我'({readyState:4,getResponseHeader:(fun ... return this)),responseText:「kkkkkreg success」,status:200,statusText:「OK 「})' – braz

+0

嗨!編輯帖子。 – Pat

+0

Your responseText:「kkkkkreg success」 但是你的AJAX期望它是** dataType:'json',** – Pat