文档章节

Ajax核心对象XMLHttpRequest

骑着毛驴来编程
 骑着毛驴来编程
发布于 2016/07/15 16:16
字数 484
阅读 26
收藏 1
要想完整的实现异步交互,要完成以下五步:
//1.创建XMLHttpRequest对象
	var xmlHttps=null;
	if(window.XMLHttpRequest){
		var xmlHttp=new XMLHttpRequest();
		if(xmlHttp.overrideMimeType){
			//针对一些特定的浏览器修复
			xmlHttp.overrideMimeType("text/xml");
		}
	}else if(window.ActiveXObject){
		//ie6以下版本会进入
		var activeName=["MSXML2.XMLHTTP","Microsoft.XMLHTTP"];
		for(var i=0;i<activexName.length;i++){
			try{
				xmlHttp=new ActiveXObject(activexName[i]);
				break;
			}catch(e){
//e可能是异常,现在一般都是IE7以上版本,也用不到了
				alert("这个e是啥"+e);
			}
		}
	}
	if(!xmlHttp){
		alert("XMLHttpRequest对象创建失败");
		return;
	}else{
		//创建成功
		xmlHttps=xmlHttp;
		//alert(xmlHttp);
		//alert(xmlHttps);
		alert("NB");
	}
	//2.注册回调函数
	xmlHttps.onreadystatechange=callback;
	//alert(xmlHttps+"....");
	
	//3.设置和服务器交互的参数
//这三个参数分别是1.提交方式,2.url地址和参数,3.true表示异步方式提交
	xmlHttps.open("GET", "AjaxServletDemo?username="+name, true);
	
	//4.置向服务器端发送的数据,启动和服务器端的交互	
//异步方式会被立即执行
	xmlHttps.send(null);
	
	//5.判断和服务器端的交互是否完成
	function callback(){
		//这里会分别显示1,2,3,4,就是说明状态改变会调用这个callback方法
		//alert(xmlHttps.readyState);
		if(xmlHttps.readyState==4){
			if(xmlHttps.status==200){
				  var message=xmlHttps.responseText;
				  $("#backname").html(message);
			}
		}
}

如果是post提交的话,则需要作出调整

//3.设置和服务器交互的参数
    //xmlHttps.open("GET", "AjaxServletDemo?username="+name, true);
    xmlHttps.open("POST", "AjaxServletDemo", true);
    xmlHttps.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    
    //4.置向服务器端发送的数据,启动和服务器端的交互    
    xmlHttps.send("username="+name);

下面是一片非常好的博客资料,大家有兴趣可以去看看,收获会更多:

http://blog.csdn.net/liujiahan629629/article/details/17126727

© 著作权归作者所有

骑着毛驴来编程
粉丝 3
博文 11
码字总数 5391
作品 0
杭州
程序员
私信 提问
XMLHttpRequest对象的创建

首先先介绍一下XMLHttpRequest对象,我们都知道Ajax它并不是单单一门技术,而是几种技术的融合。XMLHttpRequest是Ajax技术体系中最为核心的技术,如果没有XMLHttpRequest,Ajax的其余技术就无...

邵鸿鑫
2014/11/04
0
0
[Ajax-相濡以沫,不如相忘于江湖] Ajax初识

Ajax的全称是 Asynchronous JavaScript And XML,即异步JavaScript和XML。2005年由Jesse James Garrett首先提出。在之后极短的时间内,Ajax被广泛应用到大量B/S结构的应用中,改进了传统的W...

LSantorini
2016/01/26
39
0
【Ajax】Ajax总结

一、什么是Ajax: 允许浏览器与服务器通信而无须刷新当前页面的技术都被叫做Ajax(AsynchronousJavaScript and XML)。不用刷新整个页面便可与服务器通讯的办法。比如:高德地图就是不用刷新...

j15533415886
2017/12/10
0
0
Java——Ajax+Tomcat完成异步请求

Ajax最为网页异步交互技术相信大家并不陌生,这里我也不做过多介绍,详情点击(百度百科)。很多框架也封装了Ajax技术,使用起来更加简单,比如jQuery等等,这里为了了解原理,我们使用原生的...

邵鸿鑫
2015/10/30
0
0
小白来实现一个Ajax请求[Ajax使用方法及相关知识点详细解析——超级全]

写在前面: 本文主要总结整理Ajax使用方法背景知识点的详细解析,以及Ajax跨域的具体使用方式并且对栗子进行了讲解,需要的朋友可以过来参考下,喜欢的可以点波赞,或者关注一下本人,希望通...

OB丶Koro1
2017/06/01
0
0

没有更多内容

加载失败,请刷新页面

加载更多

debian10使用putty配置交换机console口

前言:Linux的推广普及,需要配合解决实际应用方能有成效! 最近强迫自己用linux进行实际工作,过程很痛苦,还好通过网络一一解决,感谢各位无私网友博客的帮助! 系统:debian10 桌面:xfc...

W_Lu
38分钟前
10
0
aelf Enterprise 0.8.0 beta有奖公测,“Bug奖金计划”重磅开启

2019年9月30日,aelf Enterprise 0.8.0 beta版正式发布。aelf Enterprise 0.8.0 beta是一个完备的区块链系统, 包含完备的区块链系统、开发套件、开发文档、以及配套的基础应用和基础服务。 ...

AELF开发者社区
39分钟前
8
0
oracle 初始化数据库脚本

create user lpf identified by 123456; create tablespace lpf_ts_cms datafile '/opt/app/oracle/product/11.2.0/lpf.dbf' size 200M; alter user lpf default tablespace lpf_ts_cms; sel......

internetafei
44分钟前
7
0
《区块链DAPP开发入门、代码实现、场景应用》笔记1——天外飞仙DAPP

Solidity编程语言解决了编写智能合约的不友好的问题,但是当合约编译并部署之后,对与这些接口的访问,对于一般的使用者来说,门槛有点高, 对普通用户来说也是非常不友好,为了使广大用户理...

柯南和由美
48分钟前
6
0
流程图制作软件推荐_流程图制作软件哪个好

流程图(Flow Chart)是一种表示算法思路的图示,通过特定图形、图表可以直观的说明某一过程。这种过程既可以是生产线上的工艺流程图,也可以标明某项任务必需的管理过程。为了便于识别,绘制...

工具分享
51分钟前
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部