ajax的进一步理解
2013-04-17 16:14
405 查看
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</title> <script> //--在这里粗心,把var xhr=null;定义在function XMLhttp()里了,哎。。 var xhr=null; function createXMLhttp() { try{ xhr=new XMLHttpRequest(); return xhr; }catch(e) { xhr=new ActiveObject("Micorosoft.XMLHTTP"); return xhr; } } function gettext() { var xhr=createXMLhttp(); var parms="i_want_text=yes";//这里是要发送的内容 var url="ajax.php";//对象网页 xhr.open("POST",url,true);//用POST提交。当用POST提交时,我们一般都把要发送的直接嵌入url中 xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");//设置HTTP协议头信息 xhr.setRequestHeader("Content-length",parms.length); xhr.setRequestHeader("Connection","close"); xhr.onreadystatechange=ready;//这里ready不需要(),你也可以这样写function(){ready();} xhr.send(parms); } function ready() { //有四个状态,4表示已完全加载,想了解,可以百度readyState if(xhr.readyState==4) { if(xhr.status==200)//200 IS OK { var p=xhr.reponseText;//这里是以文本返回 //var p=xhr.responseXML.getElementsByTagName("name");//这里是以XML格式返回 for(i=0;i<p.length;i++) { var pa=document.createElement("p");//在网页body中新建一个段 var text=document.createTextNode(p[i].firstChild.nodeValue);//创建文本区结点 pa.appendChild(text);//将文本结点加入pa中 document.getElementById("id1").appendChild(pa); } } else { alert("Error with Ajax call!"); } } } </script> </head> <body onload="gettext();"> <div id="id1"> </div> </body> </html>上面是请求网页,在请求网页中我们用了三个函数
createXMLhttp()
function gettext()
function ready()
他们就组成了我们对应网页的请求,第一个函数是创建对象,XMLHttpRequest()用于firefox,chorme等浏览器,如果用的是IE,我们则用ActiveObject(“Microsoft.XMLHTTP”),对于第二个函数就是为了得到我们需要的文本,第三个函数,如果我们没有出错,我们可以再其中操作返回的数据。
下面是AJAX.PHP
<?php /** * ajax.html * 2013.4,17 */ error_reporting(0); //当请求是responseText,我们用此处理 if ($_POST["i_want_text"]) { print "返回文本 " . $_POST["i_want_text"]; } /*当请求是ResponseXML时,我们用此处理 if ($_POST["i_want_xml"]) { header ("Content-type: text/xml"); print "<student>"; print "<name>"; print "文本 " . $_POST["xml"] ; print "</name>"; print "<name>"; print "MROU"; print "</name>"; print "</student>"; } ?>
相关文章推荐
- 通过回调函数的理解来进一步理解ajax及其注意的用法
- AJAX跟JSON的一些理解
- 关于Get和Post以及请求的进一步理解
- Ajax简单理解
- 深入理解ajax系列第一篇——XHR对象
- AJAX客户端和服务器之间的传值理解
- 通过用户名自动检测,理解Ajax的XMLHTTP对象(—)
- 深入理解jQuery中$.get、$.post、$.getJSON和$.ajax的用法
- Ajax个人理解2
- 简单理解Ajax
- ajax 异步同步的理解
- 深入理解JQuery中$.get()、$.post()、$.getJSON()、$.ajax()方法
- 深入理解JQuery中$.get()、$.post()、$.getJSON()、$.ajax()方法
- 理解AJAX工作原理 构建网站的有效方法(3)
- 深刻理解ajax中同步和异步的区别和使用场景
- memset() 与 memcpy() 的进一步理解
- jQuery框架的ajax理解运用
- ajax的理解
- 对AJAX的理解 ?
- 对内存有了进一步理解!