做一个AJAX显示数据动态刷新的例子,后台可以用随机数产生数据,前台动态显示,1秒1次

vartimerID=0;

window.onload=function(){

GetRecentInfo();

timerID=window.setInterval("GetRecentInfo()",1000);

}

2.创建提出请求

functionGetRecentInfo()

{

try{

XMLhttpObject=newXMLHttpRequest();

}catch(e){

try{

XMLhttpObject=newActiveXObject("Msxml2.XMLHTTP");

}catch(e){

try{

XMLhttpObject=newActiveXObject("Microsoft.XMLHTTP");

}

catch(e){

alert("XMLhttpObjecterror");

}

}

}

if(XMLhttpObject){

XMLhttpObject.onreadystatechange=DisplayInfo;入返回时处理函数名)

XMLhttpObject.open("POST","/servletname(写入servlet的配置名称)",true)

XMLhttpObject.setRequestHeader("content-type","application/x-www-form-urlencoded;charset=UTF-8");

XMLhttpObject.send("pageid=jspname(写入response返回的叶面名);

}

}

3.表示信息

functionDisplayInfo()

{

if((XMLhttpObject.readyState==4)&&(XMLhttpObject.status==200)){

varcsvdata=XMLhttpObject.responseText;

varLF=String.fromCharCode(10);

varlineData=csvdata.split(LF);

if(lineData.length>0){

document.getElementById("info").innerText=lineData[0];

}else{

document.getElementById("info").innerText="取得失败";

}

}

}

Ajax的工作原理

Ajax的核心思想是异步载入,JavaScript对象XmlHttpRequest,javascript调用XML的异步传输。它是一种支持异步请求的技术。简而言之,XmlHttpRequest使您可以使用JavaScript向服务器提出请求并处理响应,而不阻塞用户。

中心实现方式就是通过JavaScript的xmlhttprequest对象向服务器提交请求取得数据不刷新页面的情况下,完成数据交互。

AJAX,从底层来讲,无外乎两种实现机制:XMLHTTP以及IFRAME

xmlHttpRequest对象属性。

属性

描述

onreadystatechange

每次状态改变所触发事件的事件处理程序

readyState

对象状态值:

0=未初始化(uninitialized)

1=正在加载(loading)

2=加载完毕(loaded)

3=交互(interactive)

4=完成(complete)

responseText

从服务器进程返回的数据的字符串形式

responseXML

从服务器进程返回的DOM兼容的文档数据对象

status

从服务器返回的数字代码,比如404(未找到)或200(就绪)

statusText

伴随状态码的字符串信息

现在processVoteResponse()函数开始显示出其意义了。它首先检查XmlHttpRequest的整体状态以保证它已经完成(readyStatus==4),然后根据服务器的设定询问请求状态。如果一切正常(status==200),就使用innerHTML属性重写DOM的“votes”节点的内容。

相关推荐