3 ajax jquery ajaxcontroltoolkit ajax4jsf
你能不能告诉我在ajax中浏览器背后的什么...我只是知道没有刷新页面所有的数据都加载....
这是我的代码
<script>
function loadXMLDoc()
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","ajax_info.txt",true);
xmlhttp.send();
}
</script>
Run Code Online (Sandbox Code Playgroud)
当您发出AJAX请求时,您的浏览器会向给定地址发送HTTP请求.请求另一端的服务器响应,并将数据返回给您的浏览器.这与导航到新网页时发生的情况相同.
使AJAX与众不同的是,它不是导航到新页面并直接显示它,而是将响应数据包含在JavaScript变量中.然后可以使用JavaScript操作此变量并动态插入页面.
就是这个!唯一可能对你来说有点神秘的是这条线:
xmlhttp.onreadystatechange=function()
Run Code Online (Sandbox Code Playgroud)
这样做是将事件附加到xmlhttp实际执行请求的对象.每次对象的"就绪状态"发生变化时,事件都会触发."就绪状态"是请求状态的状态指示符.AJAX请求通常经历五个阶段:
在请求进入"完成"阶段之前,您的数据无法使用.通过检查就绪状态代码4,您有效地检查请求是否已完成.请注意,在某些浏览器中,您还可以使用上面定义的常量检查状态,但因为常量并非在所有浏览器中普遍定义(Opera是一个值得注意的例外),但最好还是坚持检查数字代码.
值得一提的是,并非所有就绪状态都必须可以从所有浏览器访问.代码4几乎是一个安全的赌注,但一些早期的代码并不总是实现.本文对此主题进行了更深入的介绍:http://www.ibm.com/developerworks/web/library/wa-ajaxintro3/.
您与就绪状态代码一起检查的另一件事是HTTP状态代码.您检查它是否等于200,因为代码200意味着请求正常执行.当请求未成功完成时,其他代码将返回给您.可以在http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html找到HTTP代码列表.
| 归档时间: |
|
| 查看次数: |
3616 次 |
| 最近记录: |