0
我有这个JavaScriptwindow.XMLHttpRequest在Chrome VS火狐
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("sendalertsdiv").innerHTML = xmlhttp.responseText;
location.reload();
}
};
xmlhttp.open("GET","sendbdrdata.php?project=" + projectname,true);
xmlhttp.send();
它工作得很好,在Chrome中。它吸引了点击一个按钮。 sendbdrdata.php文件包含一个将数据上传到数据库的查询。正如我在Chrome中撰写的那样,它非常完美。但在Firefox中,location.reload会阻止执行senddbrdata.php文件。如果我删除线
location.reload();
它在Chrome和Firefox中正常工作,但它不会重新加载页面,这是我需要在这里。
IE7,IE6 ...... IE5 ??你是真的吗? Netscape在哪里? O_o –
如果你想提交数据到服务器,然后加载一个显示结果的新页面...... **你为什么使用Ajax?!**。只需提交表单并让服务器HTTP 302重定向回显示页面即可。 – Quentin
嗯......如果FF在发送实际请求之前进入onreadystatechange事件并传递你的if语句,那将会非常奇怪。我不明白,为什么你想重新加载页面。您可以尝试延迟重新加载的执行。将该行替换为'window.setTimeout('location.reload()',500);'。但那不干净... – StanE