AJAX(Asynchronous JavaScript and XML)其实是多种技术的综合,包括 Javascript,XHTML和 CSS DOM XML 和 XSTL XMLHttpRequest。
AJAX 采用异步交互过程.从而消除了网络交互过程中的处理—等待—处理—等待缺点. 并且可以更新网页的部分内容而不需要刷新整个页面。
AJAX处理流程:
1.创建XmlHttp对象xmlHttp,根据不同的浏览器来创建.
如IE中使用ActiveXObject方式创建XmlHttp对象,其他浏览器如:Firefox、Opera等通过window.XMLHttpRequest来创建xmlhttp对象.
<script language="javascript">
var xmlHttp;
function createHttpRequest(){
if (window.ActiveXObject){
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}else if (window.XMLHttpRequest){
xmlHttp = new XMLHttpRequest();
}
}
</script>
2.调用xmlHttp的方法open(发送方式,URL,varAsync,验证信息),输入发送的方式 GET或者POST,varAsync表示指定此请求是否为异步方式,
默认为true。如果为真,当状态改变时会调用onreadystatechange属性指定的回调函数。
function startRequest(){
createHttpRequest();
var url = "F:/simpleRequest.xml";
xmlHttp.open("GET",url,true);
xmlHttp.onreadystatechange=callback;
xmlHttp.send(null);
}
4.处理服务器返回的信息
当xmlHttp的readyState为4时,并且状态status为 200时,表示成功.
当status为500时,表500错误.
onreadystatechange指定当readyState属性改变时的事件处理句柄,配合readyState使用。
readyState的状态值
未初始化 ====0
正在加载 ====1
已加载 ====2
交互中 ====3
完成 ====4
另外,还有silverlight,data entity,data service等.都不错的.
局部刷新用
UpdateProgress
是一个和 ASP.Net AJAX UpdatePanel 控件相协作,可以使得页面用户在
UpdatePanel 向服务器提交请求的期间,出现相应的提示等待信息的 ASP.Net AJAX控件。
Timer
时间控制程序,一定时间间隔后自动触发某个操作。ValidatorCallout