| 亮 さんのプロフィール懒人窝フォトブログリスト | ヘルプ |
|
4月25日 AJAX学习笔记AJAX是Asynchronous JavaScript and XML的缩写,中文翻译过来就是异步JavaScript和XML。
它的好处在于,浏览器向服务端发出请求后,用户可以继续和浏览器进行交互,而不需要等待整个页面的刷新。
客户端主要由JavaScript编写,它通过XMLHttpRequest这个对象向服务器发送请求。
XMLHttpRequest常用函数:
open(method , url , asynchronous flag);
send( content );
XMLHttpRequest常用属性:
onreadystatechange //类似于监听器,一旦状态改变,这个属性中记录的响应函数开始工作。一般就是收到服务器端的响应后的处理函数
readyState //0~4的五个值,4的时候是完成了向服务器发请求并且服务器也返回的这个过程
responseXML //服务器端返回的XML格式数据
responseText //服务器端返回的文本格式数据
status //服务器端响应的状态码,200正常
其它常用函数:
getElementsByTagName(“type”); //获得XML中具有type标签的node
getElementById("id"); //获得页面中被命名为id的元素,如table,text area等,甚至就是一行字
浏览器兼容性问题的解决:
if (window.XMLHttpRequest) //Mozilla等
{ xmlObj = new XMLHttpRequest(); } else if (window.ActiveXObject) //IE { xmlObj = new ActiveXObject("Microsoft.XMLHTTP"); } else { return; } if(xmlObj)
{
......
}
简单的模版:(例子)
<script language="javascript">
function load(resource) { if (window.XMLHttpRequest) { xmlObj = new XMLHttpRequest(); } else if (window.ActiveXObject) { xmlObj = new ActiveXObject("Microsoft.XMLHTTP"); } else { return; } xmlObj.onreadystatechange = handleResponse; xmlObj.open("GET",resource,true);
xmlObj.send(""); } function handleResponse() { if (xmlObj.readyState == 4) { //xmlObj loaded if (xmlObj.status == 200) { var datas = xmlObj.responseXML.getElementsByTagName("data")[0]; var obj = document.getElementById("data"); //obj.innerText = datas[0]; obj.innerText = datas.lastChild.data; } } } </script> コメント (3 件)
トラックバックこの記事のトラックバックの URL は次のとおりです。 http://lancerhuang.spaces.live.com/blog/cns!AD62CFA7868DC21!392.trak この記事を参照しているブログ
|
|
|