我是AJAX的问题,我有这个错误:
failed to execute 'setrequestheader' on 'xmlhttprequest' the object's state must be opened
我有这段代码:
<script type="text/javascript" language="javascript">// <![CDATA[
var myRequest = null;
function CreateXmlHttpReq(handler) {
var xmlhttp = null;
try {
xmlhttp = new XMLHttpRequest();
} catch(e) {
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch(e) {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
}
xmlhttp.onreadystatechange = handler;
return xmlhttp;
}
// ]]>
</script>
<script type="text/javascript">// <![CDATA[
function processa(messaggio,codiceChat){
myRequest = CreateXmlHttpReq(stampa_chat); //apre la funzione appendi_province
myRequest.open('POST','script/inviamessaggio.php'); //apre carica_province.php e gli indica che i valori passati devono essere considerati POST
myRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8"); //indica che il contenuto di risposta sarà di tipo html-utf8
myRequest.send("messaggio="+messaggio+"&chat="+codiceChat); //fa passare $_POST['regione']=valore al file carica_regione.php
myRequest.setRequestHeader("connection", "close"); //chiude la connessione ajax
alert(messaggio);
}
function stampa_chat(){
if(myRequest.readyState==4 && myRequest.status==200){
var a=document.getElementById("chat");
a.innerHTML=document.getElementById("chat").innerHTML + myRequest.responseText; //stampa il contenuto html passato all'interno dell'elemento con id="provincia"
}
}
// ]]>
</script>
我在这个网站上搜索过,我发现了这个问题:Ajax error in module: the object's state must be OPENED所以我试图添加 - &gt; myrequest.open()方法中的true参数,但它没有... ...
我错了什么?我不知道自己要做什么......我真的很绝望!
谢谢大家,
丹尼尔
答案 0 :(得分:-1)
我认为你没有设置:xmlhttp.setRequestHeader("X-Requested-With","XMLHttpRequest");
现在我也有这个问题,但我已经解决了,原因是它