关于ajax的基础知识

Posted hellonico

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于ajax的基础知识相关的知识,希望对你有一定的参考价值。

一、是什么

  一种异步请求数据的web开发技术,对于改善用户体验和页面性能很有帮助。简单的说就是在不需要刷新页面的情况下实现局部dom的更新。应用场景如:模糊查询以及验证提示等。

二、原理

  因为js是一个单线程的脚本语言,那么他是如何实现ajax异步的呢?这就得益于流浪器提供的一个XMLHttpRequest对象。我们举个例子:领导想找小李让其汇报下工作。

    1、领导告诉秘书叫小李过来

    2、领导接着干别的事儿

    3、秘书去叫小李

    4、秘书领小李过来

    5、秘书告诉领导小李来了

    6、小李向领导汇报工作

  以上基本可以模拟ajax的请求过程,其中XMLHttpRequest对象就扮演了秘书一角色,使得流浪器可以发出http请求接收http响应。流浪器发出请求之后就可以做其他的事情了,等收到XMLHttpRequest对象返回的数据就开始渲染页面。

三、使用

<script type="text/javascript">
    var xhr = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHTTP");
    xhr.open("POST","test.html",true);  
    xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");//post方法要设置请求头  
    xhr.send("fname=Henry&lname=Ford");  //post请求参数放在send里面,即请求体


    //1、同步处理
    document.getElementById("xxx").innerText = xhr.responseText
    //2、异步处理
    xhr.onreadystatechange=function()
        if(xhr.readyState == 4 && xhr.status ==200)
            document.getElementById("xxx").innerText = xhr.responseText
        
    
</script>

 

以上是关于关于ajax的基础知识的主要内容,如果未能解决你的问题,请参考以下文章

html PHP代码片段: - AJAX基本示例:此代码演示了使用PHP和JavaScript实现的基本AJAX功能。

AJAX相关JS代码片段和部分浏览器模型

[Go] 通过 17 个简短代码片段,切底弄懂 channel 基础

Javascript代码片段在drupal中不起作用

关于代码片段的时间复杂度

关于AJAX的基础操作