我有一个项目,我正在使用ajax和php。问题是XMLHttpRequest()的状态永远不会是200.我搜索过的解决方案都没有工作,所以我在这里问。我在这里复制/粘贴脚本和ajax发送变量的php文件。 脚本
function categoryfilter(int) {
if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
} else {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function () {
if (xmlHttp.readyState == 4 $$ xmlHttp.status == 200) {
document.getElementById("test").innerHTML = xmlHttp.responseText;
alert("GOOD");
}
}
xmlHttp.open("GET","ajax_livecategorysearch.php?category=" + int, true);
xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlHttp.send();
}
php文件
<?php echo "whatever"; ?>
HTML代码
<input id="category" name="category" type="radio" checked="checked" onclick="categoryfilter(this.value);" >
当我删除条件xmlHttp.status == 200时,该函数返回错误404页面未找到。
答案 0 :(得分:3)
您的代码中有拼写错误:
if (xmlHttp.readyState==4 $$ xmlHttp.status==200)
应该是
if (xmlHttp.readyState==4 && xmlHttp.status==200)