如何在ajax块中执行多个ajax查询

时间:2013-03-29 08:36:16

标签: php jquery sql ajax

正在开发一个项目,我使用ajax,jquery,php和sql来操作数据。

function fetchComments(commentOnId, commentOn){
if(!isNaN(commentOnId) && commentOnId >=0){
    $.ajax({
        type: 'POST',
        dataType: "json",
        url: 'get_comments.php',
        data: 'commentOnId='+commentOnId+'&commentOn=blogArticle',
        success: function(data){},
        error: function(){
        }
    }); 
}
}

以上功能使用'commentOnId& commentOn'传递给它,以json格式获取该特定博客ID的所有评论。 我的注释表中的结果/行如下所示。 ID commentOnId 给某事物发表意见 commentText AUTHORID 创建

我想要做的是获取这些行的值,并在同一个函数中运行另一个ajax查询,我将把authorId传递给一个php文件,该文件从一个名为authorDetails的表中返回一个作者的全名, 并且还使用id值运行另一个ajax查询以返回此注释id的所有回复,如果没有回复则返回null。最后用结果更新html div'。

拜托,我将非常感谢您提供快速全面的帮助。谢谢。

2 个答案:

答案 0 :(得分:1)

如果您不希望在用户迭代的基础上获得其他详细信息,则可以使用SQL连接在一个请求中获取所有需要的数据。

答案 1 :(得分:0)

如果我是你,我会在一次Ajax调用中获取所有内容,而不是执行另一个Ajax调用。

如果您想要多个Ajax调用,可以执行以下操作。

    function fetchComments(commentOnId, commentOn){
        if(!isNaN(commentOnId) && commentOnId >=0){
            $.ajax({
                type: 'POST',
                dataType: "json",
                url: 'get_comments.php',
                data: 'commentOnId='+commentOnId+'&commentOn=blogArticle',
                success: function(data){
                    $.ajax({
                        type :'post',
                        url : 'get_auth_details.php',
                        data : 'authorId=' + data.authorId,
                        success : function(data) {
                            Update div logic goes here
                        }
                    }
               },
               error: function(){
               }
           }); 
       }
   }