AJax技术

Ajax基本概念跟原理

字号+ 作者:H5之家 来源:H5之家 2018-01-21 09:08 我要评论( )

Ajax基本概念和原理 什么是Ajax Ajax 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。 Ajax的全称是Asynchronous JavaScript and XML,即异步JavaScript+XML。它并不是新的编程语言,而是几种原有技术的结合体。它由以下几种技术组合而成,

Ajax基本概念和原理
什么是Ajax

Ajax 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。

Ajax的全称是Asynchronous JavaScript and XML,即异步JavaScript+XML。它并不是新的编程语言,而是几种原有技术的结合体。它由以下几种技术组合而成,包括:

实际上,在Ajax解决方案中这些技术都是可用的,不过只有三种是必须的:HTML/XHTML、DOM以及JavaScript。

XMLHttpRequest对象

当需要异步与服务器交换数据时,需要XMLHttpRequest对象来异步交换。XMLHttpRequest对象的主要属性有:

  • readyState——对象状态值。对象状态值有以下几个:
  • 对于readyState的状态值,其中“0”状态是在定义后自动具有的状态值,而对于成功访问的状态(得到信息)我们大多数采用“4”进行判断。

    Ajax的核心就是是JavaScript对象XmlHttpRequest,这个对象为向服务器发送请求和解析服务器响应提供了流畅的接口。XmlHttpRequest可以使用JavaScript向服务器提出请求并处理响应,而不阻塞用户。

    XHR对象由IE5率先引入,在IE5中XHR对象是通过MSXML库中一个ActiveX对象实现的,根据IE版本不同可能会遇到不同版本XHR对象,而IE7+与其它现代浏览器均支持原生的XHR对象,在这些浏览器中我们只需使用XMLHttpRequest构造函数就可以构造XHR对象,因此一个浏览器兼容的创建XHR对象的函数写法大概是这个样子:

    1 var xmlhttp; 2 if (window.XMLHttpRequest) { xmlhttp=new XMLHttpRequest(); 5 } else { xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 8 }

    XMLHttpRequest对象用法

    XMLHttpRequest对象有两个重要方法 open与send。


    1 xmlhttp.open("GET","ajax_info.txt",true); 2 xmlhttp.send();

    对于open方法,有几点需要注意:

    真正能够向服务器发送请求需要调用send方法,并仅在POST请求可以传入参数,不需要则发送null,在调用send方法之后请求被发往服务器。

    请求发往服务器,服务器根据请求生成响应(Response),传回给XHR对象,在收到响应后相应数据会填充到XHR对象的属性,有四个相关属性会被填充:

    在收到响应后第一步是检查响应状态,确保响应是否成功返回(状态为200)。

    xhr.send(); 3 if(xhr.status>=200 && xhr.status

     

    1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

    相关文章
    • 好好学习,天天向上

      好好学习,天天向上

      2018-01-21 10:36

    • ASP.NET全接触系列(静态网页技术+数据库技术+AJAX+ASP.NET+WebSe

      ASP.NET全接触系列(静态网页技术+数据库技术+AJAX+ASP.NET+WebSe

      2018-01-20 11:15

    • JavaCrazyer的ItEye(codewu.com)技术博客

      JavaCrazyer的ItEye(codewu.com)技术博客

      2018-01-19 16:00

    • Ajax请求发送成功但不进success的解决方法

      Ajax请求发送成功但不进success的解决方法

      2018-01-19 16:00

    网友点评