我在 Ajax 调用内有一个 Ajax 调用,一切“似乎”工作正常。在控制台中我可以看到,两个调用都被执行并获得返回。
但不知何故,我无法使用第二次调用返回的结果(?)
$.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');
}
});
}
}
});
第一个 alert()
正在显示,第二个没有显示,尽管第二个调用正确执行了(?)这是为什么?
最佳答案
简单 - 第二个调用的响应没有返回到 ajax,即错误/失败。
在成功之后添加错误处理部分以查找响应。 成功后添加
,error: function(result){
alert('error');
console.log(result);
}
如果这不是原因,那么 dataType: 'json', 应该是罪魁祸首,因为您的响应不会采用 json 格式!!
关于javascript - Ajax 内部的 Ajax 行为有些奇怪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39551618/