AJAX学习笔记

作者: _Away_y | 来源:发表于2016-12-05 09:53 被阅读12次

    之前一直不知道ajax为何物,只知道能实现异步同步,能发请求。
    其实确实就是这么个东西。

    AJAX = Asynchronous JavaScript and XML(异步的JavaScript和XML)、
    作用是:与服务器交换数据并更新部分网页,在不重新加载整个页面的情况下。

    XMLHttpRequest是AJAX的基础。
    所有现代浏览器都支持XMLHttpRequest对象(IE5和IE6使用ActiveXObject)。

    除了IE5,IE6需要使用ActiveX对象:

    var request = new ActiveXObject("Microsoft.XMLHTTP");
    

    现代浏览器都内建此对象:

    var request = new XMLHttpRequest();
    

    向服务器发送请求
    需要使用XMLHttpRequest对象的open()和send()方法

    向服务器发送请求所需方法.png

    如果需要像HTML表单那样POST数据,需要使用setRequestHeader()来添加HTTP头。

    xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
    

    异步or同步
    open方法的async设置为true即为同步
    这时候要规定在响应处于onreadystatechange事件中的就绪状态时执行的函数,如

    xmlhttp.onreadystatechange=function()
    {
        if(xmlhttp.readyState==4&&xmlhttp.state==200)
        {
        document.getElementById("myDiv").innerHTML=xml.responseText;
        }
    }
    xmlhttp.open("GET","test1.txt",true);
    xmlhttp.send();
    

    如果ascyn为false,就不要编写onreadystatechange函数,把代码放在send()语句后即可

    xmlhttp.open("GET","test1.txt",false);
    xmlhttp.send();
    document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
    

    相关文章

      网友评论

      • shineegirl:这个感觉挺好的,但是感觉还有一些作者没有提到~可以完善一下

      本文标题:AJAX学习笔记

      本文链接:https://www.haomeiwen.com/subject/arekmttx.html