首页 > 代码库 > Ajax JavaScript学习总结
Ajax JavaScript学习总结
Ajax,就是异步请求,具体说就是想要更新网页的一部分内容,无需重新加载整个页面,只要发送请求更新局部页面就可以了。
Ajax,不是新语言,只是一种技术
Ajax的使用依赖于XMLHttpRequest对象,对象里常用的“成员”包括:open, send,responseText,onreadystatechange
创建XHR对象: var xmlrequest = new XMLHttpRequest();
XHR发送请求: xmlrequest.open("method", "url", true/false);
xmlrequest.send([string]);
open中的参数:
- method:get/post,而选其一,表示发送时使用的方法
- url:文件在服务器上的位置,或者说是路径
- 第三个参数,如果是true的话,就是异步,反之是同步
send中的参数:
1. string只有在post请求的时候才可以有,get请求多要传输的内容加在url里面
XHR响应: 传输字符串时,使用:responseText eg: var tmpText = xmlrequest.responseText;
传输XML格式是,使用:responseXML eg: var tmpXML = xmlrequest.responseXML;
onreadystatechange:用这个来存储当数据返回的时候要执行的函数;这里要介绍两个量:一个是 readyState,另一个是status。每当readyState的值变化,就会调用
onreadystatechange这个函数。
readyState的值:0—请求未初始化
1—服务器连接已建立
2—请求已接收
3—请求处理中
4—请求已完成,且响应已就绪
status的值:“404”:未找到页面
“200”:OK
在w3c上弄来的例子:
xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("myDiv").innerHTML=xmlhttp.responseText; } }
使用回调函数来代替onreadystatechange,写成这样:
function loadXMLDoc(){.... AJAX script goes here ...}</script>
function myFunction(){ loadXMLDoc("ajax_info.txt",function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("myDiv").innerHTML=xmlhttp.responseText; } });}
Ajax JavaScript学习总结