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; 以字符串形式接受后端程序的返回值.
Ajxax技术-1的更多相关文章
- 关于解决python线上问题的几种有效技术
工作后好久没上博客园了,虽然不是很忙,但也没学生时代闲了.今天上博客园,发现好多的文章都是年终总结,想想是不是自己也应该总结下,不过现在还没想好,等想好了再写吧.今天写写自己在工作后用到的技术干货,争 ...
- SQL Server技术内幕笔记合集
SQL Server技术内幕笔记合集 发这一篇文章主要是方便大家找到我的笔记入口,方便大家o(∩_∩)o Microsoft SQL Server 6.5 技术内幕 笔记http://www.cnbl ...
- 本人提供微软系.NET技术顾问服务,欢迎企业咨询!
背景: 1:目前微软系.NET技术高端人才缺少. 2:企业很难直接招到高端技术人才. 3:本人提供.NET技术顾问,保障你的产品或项目在正确的技术方向. 技术顾问服务 硬服务项: 1:提供技术.决策. ...
- 分布式锁1 Java常用技术方案
前言: 由于在平时的工作中,线上服务器是分布式多台部署的,经常会面临解决分布式场景下数据一致性的问题,那么就要利用分布式锁来解决这些问题.所以自己结合实际工作中的一些经验和网上看到的一些资 ...
- 【大型网站技术实践】初级篇:借助LVS+Keepalived实现负载均衡
一.负载均衡:必不可少的基础手段 1.1 找更多的牛来拉车吧 当前大多数的互联网系统都使用了服务器集群技术,集群即将相同服务部署在多台服务器上构成一个集群整体对外提供服务,这些集群可以是Web应用服务 ...
- 探真无阻塞加载javascript脚本技术,我们会发现很多意想不到的秘密
下面的图片是我使用firefox和chrome浏览百度首页时候记录的http请求 下面是firefox: 下面是chrome: 在浏览百度首页前我都将浏览器的缓存全部清理掉,让这个场景最接近第一次访问 ...
- 关于如何提高Web服务端并发效率的异步编程技术
最近我研究技术的一个重点是java的多线程开发,在我早期学习java的时候,很多书上把java的多线程开发标榜为简单易用,这个简单易用是以C语言作为参照的,不过我也没有使用过C语言开发过多线程,我只知 ...
- 架构设计:远程调用服务架构设计及zookeeper技术详解(下篇)
一.下篇开头的废话 终于开写下篇了,这也是我写远程调用框架的第三篇文章,前两篇都被博客园作为[编辑推荐]的文章,很兴奋哦,嘿嘿~~~~,本人是个很臭美的人,一定得要截图为证: 今天是2014年的第一天 ...
- Java数据库连接技术——JDBC
大家好,今天我们学习了Java如何连接数据库.之前学过.net语言的数据库操作,感觉就是一通百通,大同小异. JDBC是Java数据库连接技术的简称,提供连接各种常用数据库的能力. JDBC API ...
随机推荐
- java web应用启动报错:Several ports (8080, 8009) required by Tomcat v6.0 Server at localhost are already in use.
Several ports (8080, 8009) required by Tomcat v6.0 Server at localhost are already in use. The serve ...
- java 序列化流与反序列化流
一 对象序列化流ObjectOutputStream ObjectOutputStream 将 Java 对象的基本数据类型和图形写入 OutputStream.可以使用 ObjectInputStr ...
- Ubuntu 18.04 安装 docker, 设置阿里云加速
1.卸载旧的 docker 环境 sudo apt-get remove docker docker-engine docker.io containerd runc 2.设置仓库 更新索引 sudo ...
- Oracle数据库安装教程
一.准备文件 Oracle安装程序(64位)下载地址: http://download.oracle.com/otn/nt/oracle11g/112010/win64_11gR2_database_ ...
- RPC 框架通俗解释 转自知乎(洪春涛)
本地过程调用 RPC就是要像调用本地的函数一样去调远程函数.在研究RPC前,我们先看看本地调用是怎么调的.假设我们要调用函数Multiply来计算lvalue * rvalue的结果: 那么在第8行时 ...
- Flutter FlatButton 按钮基本各种用法
Flutter中给我们预先定义好了一些按钮控件给我们用,常用的按钮如下 RaisedButton :凸起的按钮,其实就是Android中的Material Design风格的Button ,继承自Ma ...
- NameNode和SecondaryNameNode(面试开发重点)
NameNode和SecondaryNameNode(面试开发重点) 1 NN和2NN工作机制 思考:NameNode中的元数据是存储在哪里的? 首先,我们做个假设,如果存储在NameNode节点的磁 ...
- Git仓库由HTTPS切换成ssh秘钥连接
Git关联远程仓库可以使用https协议或者ssh协议. [特点/优缺点] ssh: 一般使用22端口: 通过先在本地生成SSH密钥对再把公钥上传到服务器: 速度较慢点 https: 一般使用443端 ...
- Java算法之根据二叉树不同遍历结果重建二叉树
二叉树的遍历方式一般包括前序遍历.中序遍历以及后序遍历: 前序遍历:根结点 | 左子树 | 右子树 中序遍历:左子树 | 根结点 | 右子树 后序遍历:左子树 | 右子树 | 根结点 二叉树遍历的性质 ...
- 你还在用a标签吗?——用button替代a
前言:a标签,不止你在用,我也在用.但某些时候我们可以考虑用button替代a. 在多页应用中,a标签很常见,我们常用来作为一个普通超链接,进行页面跳转. 而在单页应用中,我们使用路由进行页面切换,a ...