如何同时制作两个jquery-ajax进程?

时间:2009-05-17 23:30:57

标签: jquery ajax

我试图在同一页面中调用2个函数同时提交jquery-ajax来处理差异任务(函数1是将新记录存入数据库,函数2是每5秒读取一次数据库然后显示来自html中表的数据库中的记录)。

在我调用函数1之前,页面工作正常,调用函数2每5秒读取一次记录并在页面上显示记录,但是一旦我调用函数1来记录新记录,函数2似乎在等待在队列上,只在符合功能1后启动进程。但是,我很确定这个问题不是因为数据库被锁定而功能1正在进行新的记录。

有谁知道如何同时进行jquery-ajax处理?有关我的代码的详细信息,请参阅下文:

HTML:

<table style='width:100%' border="0">
    <tr>
        <td width="120"><input onclick="submitAction()" type="button" value="Process"></td>
    </tr>
</table>

<script>
    var myInterval = setInterval('getUpdatedRecord()', 5000);
</script>

使用Javascript:

function submitAction()
{
    var paramList = "Action=make_process";

    ajaxRequest = $.ajax({
        url: "ord_process.php",
        type: 'POST',
        data: paramList,
        error: function(){
             msgObj.innerHTML = '<div style="width:313px; padding-top:40px;"><p class="cAlign">Connecton error.<br>Please try again.</p></div>';
                },
        success: function(data){
         var endDateTime = getCurrentDateTime();
         msgObj.innerHTML = ''; 
        alert("  "+data+"\n\n  Start Date&Time : "+startDateTime+"\n    End Date&Time : "+endDateTime)
            }   
     });    
}



function getUpdatedJobRecord()
{
    var paramList = "Action=get_job_record&call=ajax";

    ajaxRequest = $.ajax({
            url: "ord_process.php",
            type: 'POST',
            data: paramList,
            error: function(){
                msgObjB.innerHTML = update_date;
                msgObjA.innerHTML = '<td><div style="width:313px; padding-top:40px;"><p class="cAlign">Connecton error.<br>Please try again.</p></div></td>';
            },
            success: function(data){
                msgObjB.innerHTML = update_date;
                msgObjA.innerHTML = data;
            }       
    }); 
}

1 个答案:

答案 0 :(得分:0)

您是否查看了文档:http://docs.jquery.com/Ajax/jQuery.ajax 试过async-option? 另一个解决方案可能是(虽然很难)复制ord_process.php脚本并查看问题是否是由于某些内部队列或其他原因。