AJAX流程
创建一个XHR对象
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
或者写成try/catch形式
try{
var xmlhttp = new XMLHttpRequest();
}catch(e){
var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
初始化请求 open()
xmlhttp.open("POST","ajax_test.php",true);
xmlhttp.open("GET","ajax_test.php",true);
设置请求的HTTP头信息 setRequestHeader() 注:必须在open()后调用。
//用POST方法提交请求时,设置编码类型
xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
//提交COOKIE
xmlhttp.setRequestHeader("COOKIE","cookiename=cookievalue");
//提交XML
xmlhttp.setRequestHeader("Content-Type","text/xml");
发送请求 send()
xmlhttp.send()
指定请求状态改变时的事件句柄处理 onreadystatechange
xmlhttp.onreadystatechange = function(){
//code
}
获取当前请求状态 readyState对象
0(未初始化)-对象已经创建,但未调用open方法初始化;
1(初始化)-对象已经初始化,但未调用send方法;
2(发送数据)-send方法已经被调用,但是HTTP状态和HTTP头未知;
3(数据传送中)-已经开始接收数据,但由于响应数据和HTTP头信息不全,这时尝试获取数据会出现错误;
4(完成)-数据接收完毕。
if(xmlhttp.readyState == 4){
//code
}
返回当前请求的HTTP状态码 status属性
if(xmlhttp.status == 200){
//code
}
从返回信息中获取指定的HTTP头
xmlhttp.getResponseHeader("property")
获取返回信息的所有HTTP头 getAllResponseHeaders()
xmlhttp.getAllResponseHeaders()
取得返回的数据
xmlhttp.responseText;
//XML
xmlhttp.responseXML;
取消当前请求
xmlhttp.abort();
最终版本
//创建XHR对象
try{
var xmlhttp = new XMLHttpRequest();
}catch(e){
var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
//初始化请求
xmlhttp.open("POST","ajax_test.php",true);
//设置请求的HTTP头信息
xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
//指定请求状态改变时的事件句柄处理
xmlhttp.onreadystatechange = function(){
if(xmlhttp.readyState == 4 && xmlhttp.status == 200){
//获取返回信息的所有HTTP头
alert(xmlhttp.getAllResponseHeaders());
//取得返回的数据
alert(xmlhttp.responseText);
alert(xmlhttp.responseXML);
}
}
//发送请求
xmlhttp.send();
AJAX流程的更多相关文章
- jQuery ajax 流程全解析
实例解析java + jQuery + json工作过程(登录) 本文主要讲解在java环境下使用jQuery进行JSON数据传送的交互过程 参考根据作者的账务管理系统(个人版) 源码下载 讲解 一. ...
- AJAX流程 代码
var xml = window.XMLHttpRequest ?new XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHT ...
- Ajax学习心得
Ajax学习心得 大致学了下Ajax,才知道它不是某种编程语言,而是一种在无需加载整个页面的情况下能够更新部分网页的技术.了解了它的功能后觉得这真是一种好的技术,这得给前端和运维省多少力啊! 传统的网 ...
- php热身2:CRUD with Ajax
这次热身是一个会员管理系统,包括会员注册.登录.资料修改功能,使用ajax技术 1.建表 use common_module; create table if not exists member( u ...
- 重点+超详细:ajax和json及案例
不用jQuery的ajax流程 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "ht ...
- 异步请求之ajax
一.初识ajax 1.下载引入jQuery <script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"& ...
- 再也不学AJAX了!(二)使用AJAX
在上一篇文章中我们知道,AJAX是一系列技术的统称.在本篇中我们将更进一步,详细解释如何使用Ajax技术在项目中获取数据.而为了解释清楚,我们首先要搞清楚我们是从哪里获取数据的,其次我们关注的才是获取 ...
- Ajax,跨域,nrm
一.ajax 原理 和 使用 ajax,即在不重新加载整个网页的情况下,对网页的某部分进行更新. 下面演示ajax 的实现原理 配置: cd ajax 参考:http://www.expressjs. ...
- AJAX经常遇到的那些问题
本文主要介绍了AJAX工作原理以及在面试题经常会遇到的问题,目录如下: 什么是Ajax 为什么要使用Ajax? Ajax特点? AJAX优缺点? Ajax流程? XMLhttprequest对象 AJ ...
随机推荐
- erlang访问https地址
参考How do I do an HTTPS request with Erlang? 1> application:start(inets). ok 2> application:sta ...
- Filter2D卷积运算
图像处理中的卷积运算一般都用来平滑图像.尖锐图像求边缘等等.主要看你选择什么样的核函数了.现在核函数很多,比如高斯平滑核函数,sobel核函数,canny核函数等等.这里举一个sobel核函数的例子来 ...
- redis 入手
redis是数据库,数据库肯定是处理处理数据.既然是处理数据,无非就是增删查改 redis用于操作键的命令基本上分为两大类 对任何键都可执行的: DEL 命令. EXPIRE 命令. RENAME 命 ...
- 【移动端debug-3】部分安卓机型不触发touchend事件的解决方案
最近在项目中遇到一个奇怪的问题,有一个需求是这样:页面上有一个按钮,滚动页面时让它消失,停止滚动时让它显示. 常规思路: step1.监听touchstart事件,记录Touch对象中pageY初始值 ...
- 【笔记】sublime 一些常用功能和快捷键
Ctrl+D 选词 (反复按快捷键,即可继续向下同时选中下一个相同的文本进行同时编辑)Ctrl+G 跳转到相应的行Ctrl+J 合并行(已选择需要合并的多行时)Ctrl+L 选择整行(按住-继续选择下 ...
- BZOJ 1226 学校食堂(状压DP)
状压DP f(i,j,k)表示前i−1个人已经吃了饭,且在i之后的状态为j的人也吃了饭(用二进制表示后面的状态),最后吃的那个人是i之后的第k个 (注意k可以是负数) 然后 如果j&1=1那么 ...
- java执行cmd命令并获取输出结果
1.java执行cmd命令并获取输出结果 import java.io.BufferedReader; import java.io.InputStreamReader; import org.apa ...
- [HNOI2006]最短母串问题 AC自动机
题面:洛谷 题解: 如果我们对这些小串建出AC自动机,那么我们所求的大串就是要求满足遍历过所有AC自动机上的叶子节点,且经过步数最少的串.如果有多个步数相同的串,要输出字典序最小的串. 在AC自动机上 ...
- [HNOI2002]跳蚤 【容斥】
题目描述 Z城市居住着很多只跳蚤.在Z城市周六生活频道有一个娱乐节目.一只跳蚤将被请上一个高空钢丝的正中央.钢丝很长,可以看作是无限长.节目主持人会给该跳蚤发一张卡片.卡片上写有N+1个自然数.其中最 ...
- secureCRT mac 下破解
http://blog.csdn.net/skykingf/article/details/17450561