function stateChanged(idname) {
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
document.getElementById(idname).value = xmlhttp.responseText;
}
}
}
function openSend(php,idname) {
stateChanged(idname);
xmlhttp.open("GET",php,true);
xmlhttp.send();
}
function showHint() {
if (window.XMLHttpRequest) {
xmlhttp=new XMLHttpRequest();
} else {
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
openSend("time.php", "Time");
openSend("date1.php", "Date1");
openSend("date2.php", "Date2");
return;
}
这两个说中止(在Firebug中)并且不返回值。这是为什么?是因为我不能发送超过1个请求吗?
openSend("time.php", "Time");
openSend("date1.php", "Date1");
如果我不能,我怎么能只用一次调用来实现3个请求?
答案 0 :(得分:1)
您需要创建三个XHR(XML HTTP请求)对象,每个对象应发送一个请求。如果你想坚持使用一个XHR对象,你必须将请求链接起来,以便在一个请求完成后(就绪状态= 4,状态=无论如何),下一个请求被触发。