考虑这个嵌套的ajax调用:
$.ajax({
type: "POST",
dataType: "json",
data: dataString,
url: "includes/check.php",
success:function(result){
if(result['response']==false){
$.ajax({
type: "POST",
dataType: "json",
data: dataString,
url: "includes/add.php",
success:function(){
alert('Success');
});
} else {
alert('A problem has occurred!');
}
}
});
两个php脚本都被成功调用并执行它们要执行的操作但我无法获得嵌套的ajax调用的成功操作来显示。
有什么想法吗?
答案 0 :(得分:0)
当您将dataType
设置为json
时,如果响应是有效的JSON并且可以解析,jQuery将仅触发成功事件。如果您发送任何无效的JSON,jQuery将不会触发成功事件。根据您说的评论,您输出的1
是无效的JSON。
相反,您可以输出一些JSON(在add.php
中):
echo json_encode(array('success' => true));
输出
{ “成功”:真}
或删除json dataType设置并执行以下操作:
success:function(response){
if(response == "1")
{
alert('Success');
}
else
{
alert("Fail");
}
});
附注:使用Firebug或Chrome开发工具查看ajax响应(而不是通过电子邮件发送给自己)。