zoukankan      html  css  js  c++  java
  • XMLHttpRequest

    用XMLHttpRequest对象,发请求的基本代码如下:

    var xmlhttp=new XMLHttpRequest();
                    var url="http://localhost:3004/test";
                    xmlhttp.open("get",url,true);
                    xmlhttp.onreadystatechange=function(){
                        if(xmlhttp.readystatus==4){
                            if(xmlhttp.status==200){
                                
                            }
                        }
                    };
                    xmlhttp.send(null);

    其中,onreadystatechange事件回调的readystatus与status的区别,需要区分下。

    readystatus(是XMLHttpRequest对象发请求后的客户端服务端的一些信息记录?)具体如下所示:

    0 - (未初始化)还没有调用send()方法
    1 - (载入)已调用send()方法,正在发送请求
    2 - (载入完成)send()方法执行完成,已经接收到全部响应内容
    3 - (交互)正在解析响应内容
    4 - (完成)响应内容解析完成,可以在客户端调用了

    而status则是http的状态码,如200,404,500之类的

    可参考:http://www.cnblogs.com/lxinxuan/archive/2009/10/22/1588053.html

    //W3C上的示例代码
    var xmlhttp;
                function loadXMLDoc(url) {
                    xmlhttp = null;
                    if (window.XMLHttpRequest) {// code for all new browsers
                        xmlhttp = new XMLHttpRequest();
                    } else if (window.ActiveXObject) {// code for IE5 and IE6
                        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
                    }
                    if (xmlhttp != null) {
                        xmlhttp.onreadystatechange = state_Change;
                        xmlhttp.open("GET", url, true);
                        xmlhttp.send(null);
                    } else {
                        alert("Your browser does not support XMLHTTP.");
                    }
                }
    
                function state_Change() {
                    if (xmlhttp.readyState == 4) {// 4 = "loaded"
                        if (xmlhttp.status == 200) {// 200 = OK
                        } else {
                            alert("Problem retrieving XML data");
                        }
                    }
                }
    

      

    详细解释如下文章所示:

    readyState-->>http://hi.baidu.com/devilpn/item/bc6c2d2b69d516cbdcf69ad6

    status-->>http://www.cnblogs.com/JemBai/archive/2009/04/10/1432939.html

    w3c-->>http://www.w3school.com.cn/xml/xml_http.asp

     
  • 相关阅读:
    vuejs中使用echart图表
    锚点链接
    如何动态修改网页的标题(title)?
    如何为图片添加热点链接?(map + area)
    cookie
    如何为你的网站添加标志性的图标(头像)呢?
    图片拖拽上传至服务器
    js定时器之setTimeout的使用
    input[type=file]中使用ajaxSubmit来图片上传
    input[type=file]样式更改以及图片上传预览
  • 原文地址:https://www.cnblogs.com/simonbaker/p/3870686.html
Copyright © 2011-2022 走看看