Ajax
ajax即“Asynchronous Javascript And XML”(异步于JavaScript和XML),是指一种创建交互式网页应用的网页开发技术
Ajax=异步JavaScript和XML或者是HTML标准通用标记语言的子集
Ajax是一种用于创建快速动态网页的技术
Ajax是一种在无需要重新加载整个网页的情况下,能够更新部分网页的技术,对网页某部分进行更新
传统网页(不使用Ajax)如果需要更新内容,必须重载整个网页页面
异步:发送请求后不等返回结果,由回调函数处理结果
名称来源
Ajax整个术语源自描述从基于web的应用基于数据的应用,它不是一种新的编程语言,儿时一种用于创建更好更快以及交互性更强的web应用程序的技术
优缺点:
优点:
a、就是能在不更新的整个页面的前提下维护数据。这使得web应用程序更为迅捷的回应工作,并避免了在网络上发送哪些没有改变的信息
b、不需要任何浏览器插件,但需要用户允许JavaScript在浏览器上执行。随着Ajax的成熟,一些简化Ajax使用方法的程序库也相继问世
缺点:
a、它能破坏浏览器的后退与加入收藏书签功能,在动态页面更新页面的情况下,用户无法回到前一个页面状态,用户通常希望点击后退按钮就能够取消他们的前一次操作,在Ajax应用程序中无法这样做,但是也有开发者想出了种种办法来解决
b、无法将状态加入收藏或书签的问题,HTML5之前的一种方式是使用URL片断标识符(通常被称为锚点,也就是URL中#后面的部分)来保持追踪
c、进行Ajax开发是,网络延迟----即用户发出请求到服务器发出响应之间的间隔-----需要慎重考虑,如果不给与用户明确的回应,没有恰当的预读数据,或者XMLHttprequest的不恰当处理,都会使客户厌烦。通常的解决方案就是使用一个可视化组件来告诉用户系统正在进行后台操作并且用户正在读取数据和内容。
XMLHttpRequest
(1)JavaScript对象XMLHttpRequest是整个Ajax技术的核心,它提供了异步发送请求的能力
(2)常用方法
方法名 | 说明 |
---|---|
open(method,URL,async) | 建立与服务器的连接,method参数指定请求的http方法,典型的值get或post url参数指定请求的地址 async参数指定是否使用异步请求 |
send(content) | 发送请求 content参数指定请求的参数 |
setRequestHeader(header,value) | 设置请求的头信息 |
(3)常用属性:
onreadystatechange:指定回调函数
readystate:XMLHttpRequest的状态信息
(4)常用属性:
status:http的状态码
responseText:获得响应的文本内容
responseXML:获得响应的XML文档对象