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

var timerID = 0;
window.onload = function(){
GetRecentInfo();
timerID = window.setInterval("GetRecentInfo()",1000 );
}
2.创建提出请求
function GetRecentInfo()
{
try{
  XMLhttpObject = new XMLHttpRequest();
}catch(e){
  try{
  XMLhttpObject = new ActiveXObject("Msxml2.XMLHTTP");
  }catch(e){
  try{
  XMLhttpObject = new ActiveXObject("Microsoft.XMLHTTP");
  }
  catch(e){
  alert("XMLhttpObject error");
  }
  }
}
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. 表示信息
function DisplayInfo()
{
if((XMLhttpObject.readyState == 4 ) && (XMLhttpObject.status == 200)) {
  var csvdata = XMLhttpObject.responseText;
  var LF = String.fromCharCode(10);
  var lineData = 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”节点的内容。

你可能感兴趣的:(Ajax)