Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/89.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript XMLhttprequest问题_Javascript_Html_Ajax_Xmlhttprequest - Fatal编程技术网

Javascript XMLhttprequest问题

Javascript XMLhttprequest问题,javascript,html,ajax,xmlhttprequest,Javascript,Html,Ajax,Xmlhttprequest,我正在尝试处理xmlhttprequests,但它不起作用。插入警报框时,我收到的状态为0。我不太明白怎么了 函数submitChat(){ 如果(form1.uname.value!=''&&form1.msg.value!=''){ var uname=form1.uname.value; var msg=form1.msg.value; var xmlhttp=new XMLHttpRequest(); 警报(xmlhttp.status); xmlhttp.onreadystatech

我正在尝试处理xmlhttprequests,但它不起作用。插入警报框时,我收到的状态为0。我不太明白怎么了

函数submitChat(){
如果(form1.uname.value!=''&&form1.msg.value!=''){
var uname=form1.uname.value;
var msg=form1.msg.value;
var xmlhttp=new XMLHttpRequest();
警报(xmlhttp.status);
xmlhttp.onreadystatechange=函数(){
if(xmlhttp.readystate==4&&xmlhttp.status==200){
document.getElementById('chatlogs').innerHTML=xmlhttp.responseText;
}
}
open(“GET”、“insert.php?uname=“+uname+”&msg=“+msg,true”);
xmlhttp.send();
}否则{
警报(“所有字段均为必填!!!”;
返回;
}
}
`Chatname:



正在加载聊天记录!!!!!!!!!!
您应该在发出
警报之前执行
.open()
。因此,您的代码如下所示:

function submitChat() {
    if (form1.uname.value != '' && form1.msg.value != '') {

        var uname = form1.uname.value;

        var msg = form1.msg.value;
        var xmlhttp = new XMLHttpRequest();
        xmlhttp.open("GET","insert.php?uname="+uname+"&msg="+msg,true);
        alert (xmlhttp.status);
        xmlhttp.onreadystatechange = function() {
            if(xmlhttp.readystate==4 && xmlhttp.status==200) {
                document.getElementById('chatlogs').innerHTML = xmlhttp.responseText;


            }

        }

        xmlhttp.send(null); 



    } else {
        alert("All Fields are Mandatory !!!");
        return;
    }
}

在执行Ajax时不要发出警报。而是执行
window.console&&console.log(xmlhttp.status)在OnReadyStateChange中我看到了,谢谢。我想做的是试着找出代码不起作用的原因。因此,我认为通过得到xmlhttp.status的警报会给我一个更好的主意。我会等到onreadystatechange中的send或console.log之后,他需要的是在
readystatechange
之前设置此ajax的类型。如果他提醒这个,它将返回
200
谢谢,我仍然得到了0的返回。我想弄明白的是为什么代码不能完全正常工作。正因为如此,我发布了一个xmlhttp.status警报,以尝试获取一些信息。除了警报之外,我的代码本身还缺少什么吗?谢谢