0

考虑这个嵌套的 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 调用的成功操作。

有任何想法吗?

4

1 回答 1

0

当您设置为dataTypejson,如果响应是有效的 JSON 并且可以被解析,jQuery 只会触发成功事件。如果您发送任何不是有效 JSON 的内容,jQuery 将不会触发成功事件。从您说您输出的评论1中,这不是有效的 JSON。

相反,您可以输出一些 JSON(in add.php):

echo json_encode(array('success' => true));

输出

{“成功”:真}

或者删除 json dataType 设置并执行以下操作:

           success:function(response){
                if(response == "1")
                {
                    alert('Success');
                }
                else
                {
                    alert("Fail");
                }
           });

旁注:使用 Firebug 或 Chrome 开发工具查看 ajax 响应(而不是通过电子邮件发送给自己)。

于 2013-02-20T15:02:43.943 回答