原生ajax 与jquery ajax 的对比

前端之家收集整理的这篇文章主要介绍了原生ajax 与jquery ajax 的对比前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

第一种:原生js 的ajax请求

XMLHttpRequest,不得不提的一个对象,AJAX最核心也是最底层的对象。可悲哀的是,它是W3C的一个标准,但微软IE一直很自我(微软IE)。怎么办?当然是用一个方法和谐掉它们。


 //异步检测
var XMLHttpReq;
//创建XMLHttpRequest对象
function createXMLHttpRequest() {
  if(window.XMLHttpRequest) { //Mozilla 浏览器
     XMLHttpReq = new XMLHttpRequest();
  }
  else if (window.ActiveXObject) { // IE浏览器
    try {
       XMLHttpReq = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
      try {
        XMLHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
      } catch (e) {}
    }
  }
}

这样就拿到了XMLHttpRequest对象。

下面是处理响应的函数

       function checkXMLEmailResponse(){
	if (XMLHttpReq.readyState == 4) { // 判断对象状态
	    if (XMLHttpReq.status == 200) { // 信息已经成功返回,开始处理信息
			var resXML = XMLHttpReq.responseText;

                      //这里写代码

       } else { //页面不正常 
          window.alert("您所请求的页面有异常。"); 
         }} }

好了,xhr对象有了,处理响应的函数也有了,那怎么调用呢。

  
  createXMLHttpRequest();//初始化xhr
   XMLHttpReq.open('GET','/demo/ajax/iajax20110306_query.PHP?entryname='+val,true);
  //与readyState属性有关,当readyState改变时它才会触发  
 XMLHttpReq.onreadystatechange=checkXMLEmailResponse; //这里设置响应的函数
 //异步处理完成后发送数据出去(比如某些需要在焦点事件后再执行的) 
  XMLHttpReq.send(null);

第二种:jquery 封装的ajax方法

                     $.ajax( {
			url : url,type : 'get',success : function(data) {
				//data为返回数据

			}
		
是不是很简单呢。那我们以后就快乐得用jquery吧。

猜你在找的Ajax相关文章