我有一个不使用firefox运行的HTTPRequest,它确实在google chrome上运行,因为它返回了我为测试而编写的警报。
var htpr = new XMLHttpRequest();
var url = "../something.php";
var val = "pro_ID="+prod_id+"&quan="+quan;
alert("test ajx");
htpr.open("POST", url, true);
htpr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
htpr.onreadystatechange = function(){
if(htpr.readyState == 4 && htpr.status == 200){
var dt = htpr.responseText;
alert(dt);
}
}
htpr.send(val);
}
if(isset($_POST['pro_ID'])) {
echo "Test";
}
echo "test wrong";
找到更新的问题!
我发现了错误,因为我在html表单中触发了ajax函数我相信表单中的默认刷新函数是在执行ajax之前刷新页面,我现在设置表单以防止其默认函数" event.preventDefault()&#34 ;.它似乎已经修复了。真的很奇怪!从没想过会有问题
答案 0 :(得分:0)
下:
htpr.onreadystatechange = function(){
添加:
console.log(htpr);
也许它会告诉你为什么答案没有通过'代码200,状态4'测试。
您还可以在Firefox中查看“网络”标签。当XHR在Chrome中返回代码4xx或5xx时,它会在控制台中显示有关它的信息。在Firefox中没有关于XHR请求问题的信息 - 您必须在网络中检查它(有问题的请求是红色的)。