第一种:原生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("您所请求的页面有异常。"); }} }
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吧。