我试图在同一页面中调用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;
}
});
}
答案 0 :(得分:0)
您是否查看了文档:http://docs.jquery.com/Ajax/jQuery.ajax 试过async-option? 另一个解决方案可能是(虽然很难)复制ord_process.php脚本并查看问题是否是由于某些内部队列或其他原因。