实现ajax发送异步请求(图文教程)

亚连
Freigeben: 2018-05-21 17:18:59
Original
1455 Leute haben es durchsucht

这篇文章主要教大家轻松实现ajax发送异步请求,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

ajax发送异步请求,供大家参考,具体内容如下

第一步(得到XMLHttpRequest)

ajax其实只需要学习一个对象:XMLHttpRequest,如果掌握了它,就掌握了ajax!!!

1.得到XMLHttpRequest

大多数浏览器都支持:var xmlHttp=new XMLHttpRequest();
IE6.0:var xmlHttp=new ActiveXObject(“Msxml2.XMLHTTP”);
IE5.0以更早版本的IE:var xmlHttp=new ActiveXObject(“Microsoft.XMLHTTP”);

2.编写创建XMLHttpRequest对象的函数

function createXMLHttpRequest(){ try{ return new XMLHttpRequest(); } catch(e){ try{ return new ActiveXObject(“Msxml2.XMLHTTP”); }catch(e){ try{ return new ActiveXObject(“Microsoft.XMLHTTP”); }catch(e){ alert(“哥们儿,你用的是什么浏览器啊?”); throw e; } } } }
Nach dem Login kopieren

第二步(打开与服务器的连接)

xmlHttp.open():用来打开与服务器的连接,它需要三个参数:

请求方式:可以是GET与POST
请求的URL:指定服务器端资源,例如:/day23_1/AServlet
请求是否为异步:如果为true表示发送异步请求,否则同步请求

xmlHttp.open(“GET”,”/day23_1/AServlet”,true);//比如

第三步(发送请求)

xmlHttp.send(null):如果不给可能会造成部分浏览器无法发送!

参数:就是请求体内容!如果是GET请求,必须给出null。
如果是POST请求,如下

xmlHttp.send(“username=zhangSan&password=123”);

第四步:

在xmlHttp对象的一个事件上注册监听器:onreadystatechange
xmlHttp对象一共有5个状态

0:初始化未完成状态,只是创建了XMLHttpRequest对象,还未调用open()方法
1:请求已开始,open()方法已调用,但还没调用send()方法
2:请求发送完成状态,send()方法已调用
3:开始读取服务器响应
4:读取服务器响应结束(通常我们只关心最后这个状态!!!)

得到xmlHttp对象的状态

var state = xmlHttp.readyState;//可能是0、1、2、3、4
Nach dem Login kopieren

得到服务器响应的状态码(200:成功 304:状态没有改变 404 500:服务器错误)

var status=xmlHttp.status;//例如200、404、500
Nach dem Login kopieren

得到服务器响应的内容

var content=xmlHttp.responseText;//得到服务器的响应的文本格式的内容(这更通用) var content=xmlHttp.responseXML;//得到服务器的响应的xml响应的内容,它是document对象了!
Nach dem Login kopieren

所以监听器应该这样写

xmlHttp.onreadystatechange = function(){ //xmlHttp的5种状态都会调用本方法 if(xmlHttp.readyState ==4 && xmlHttp.status == 200){ //双重判断:判断是否为4状态,而且还要判断是否为200 var text=xmlHttp.responseText; } };
Nach dem Login kopieren

上面是我整理给大家的,希望今后会对大家有帮助。

相关文章:

ajax实现上传图片保存到后台并读取的实例(图文教程)

Struts2和Ajax数据交互(图文教程)

Ajax请求发送成功但不进success的解决方法(图文教程)

Das obige ist der detaillierte Inhalt von实现ajax发送异步请求(图文教程). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!