我有一个表,其中每一行都有一个触发AJAX调用的按钮。调用相同的功能但不同的参数。结果显示在与调用相同的行中。同一个js函数可以同时进行AJAX调用吗?
该通话可以提高速度,因此可能需要一分钟左右的时间。我可以观察到,如果我在前一个完成之前发起新的AJAX呼叫,我将失去呼叫的结果。
有什么办法可以我可以在同一个时间运行多个AJAX调用,并从调用中获得结果并显示它们?
- 使用jQuery
- 同一浏览器窗口
- 调用PHP
HTML代码调用JavaScript的
<button type="button" onclick="update_revision(\'' . $directory . '\',\''.$server_name.'\')" > update </button>
的Javascript
function update_revision(revision,server_name)
{
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("rev."+revision).value="updated to "+update_to;
}
}
xmlhttp.open("GET","https://"+server_name+"/imacs/radek/svn_update.php?code_base="+revision+"&revision="+update_to+"&t=" + Math.random(),true);
xmlhttp.send();
}
内
只需停止使用全局变量。您可以覆盖'xmlhttp',这样每当您的XHR对象的状态发生变化时,'onreadystatechange'就会检查您创建的* last *的条件。 – Quentin
@Quentin:你能详细解释一下吗?我不明白... – Radek