Ajxax技术-1
1.什么是Ajax
Ajax: Asynchronous javascript and xml (异步javascript和xml)。
==Ajax并不是一种新技术,而是已有技术的集合。JavaScript是核心载体==。
Ajax优势:在不刷新页面的情况下,更新页面数据,提升用户体验。
- ==Ajax就像一个小秘书==,能够实现异步工作。
2.ajax核心对象 --- XMLHttpRequest
创建ZMLhttpRequest对象,兼容IE7之前和主流浏览器
//创建XMLHttpRequest对象,兼容低版本IE和非IE浏览器
function getXhr () {
var xmlhttp; if (window.XMLHttpRequest) {
//IE7+ 和 非IE 中都有 XMLHttpRequest对象
xmlhttp = new XMLHttpRequest();
} else {
//低版本IE浏览器 实例化方式
xmlhttp = new ActiveXObject('Msxml2.XMLHTTP');
} return xmlhttp;
}
3.核心方法
XMLHttpRequest对象有了,可以发送Ajax请求了.发送请求有两个方法:
open(var1,var2,var3):准备ajax请求
var1: 请求方式 get/post
var2: 请求的后端程序地址
var3: 异步(true)/同步(false),可选参数,默认为true
var: 分为两种情况。 如果是get请求,则填写null。 如果是post请求,则填写要发送到后端的数据。
==发送ajax请求流程
1) 创建XMLHttpRequest对象
2) 调用open方法准备ajax请求
3) 调用send方法发送ajax请求
4.接收后端响应结果
Ajax的整个过程有5个状态,对应readyState的5个值:0-4
0: (Uninitialized) the send( ) method has not yet been invoked.
1: (Loading) the send( ) method has been invoked, request in progress.
2: (Loaded) the send( ) method has completed, entire response received.
3: (Interactive) the response is being parsed.
4: (Completed) the response has been parsed, is ready for harvesting.
0 - (未初始化)还没有调用send()方法
1 - (载入)已调用send()方法,正在发送请求
2 - (载入完成)send()方法执行完成,已经接收到全部响应内容
3 - (交互)正在解析响应内容
4 - (完成)响应内容解析完成,可以在客户端调用了
5.核心事件 --- onreadystatechange
onreadystatechange事件: readyState的值每次发生变化都会触发该事件。 0-->1 1-->2 2-->3 3-->4 总共触发4次
6.其他属性
responseText; 以字符串形式接受后端程序的返回值.
最新文章
- tp5 model 的时间戳
- Can't use Subversion command line client: svn Probably the path to Subversion executable is wrong. Fix it.
- 可爱的Python_课后习题_CDay−2 完成核心功能
- transient的使用
- ios二维码生成
- 浅入“Block Formatting Context”
- 无法打开包括文件:'atlrx.h'的解决办法
- log4net资料收集
- Java之美[从菜鸟到高手演变]之JVM内存管理及垃圾回收
- 【面试题042】翻转单词顺序VS左旋转字符串
- [转]httpclient 上传文件、下载文件
- WPF ResourceDictionary的使用
- geotrellis使用(三十七)COG 基础介绍
- 分享几个 SpringBoot 实用的小技巧
- 2016/12/20 dplの课练
- java多线程系列 目录
- BVLC CaffeNet可视化及类别预测
- storm集成kafka的应用,从kafka读取,写入kafka
- 使用 WebSocket 客户端连接 MQTT 服务器
- 第二次作业 --- 我对QQ的评测