WEB开发网
开发学院WEB开发Ajax Ajax实现不刷屏的前提下实现页面定时刷新 阅读

Ajax实现不刷屏的前提下实现页面定时刷新

 2007-04-30 11:16:30 来源:WEB开发网   
核心提示:主页面(要求刷新的页面)要求每一分钟刷新一次系统时间<html><body getSystemTime.jsp")"> //创建httPRequest对象<form name="dateForm"><table><td col

主页面(要求刷新的页面)要求每一分钟刷新一次系统时间

<html>

<body getSystemTime.jsp")"> //创建httPRequest对象

<form name="dateForm">

<table>

<td colspan="2" align="center">
     <div id="sysTimeShow"></div> //显示平台系统时间
     </td>
</table></form>

</body>

</html>

getSystemTime.jsp   //获得系统的当前时间,也就是输出结果的页面

<%@ page language="java"  %>
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.util.Date"%>
<%@ page import="java.sql.Timestamp"%>
<%@ page import="java.io.IOException"%>

<%
Date d = new Date();
Timestamp ts = new Timestamp(d.getTime());
String result = ts.toString().substring(0,16);
out.write(result,0,result.length());
%>


Ajax.js

function makeRequest(url) {
 http_request = false;
 if (window.xmlHttpRequest) {
  http_request = new xmlhttpRequest();
  if (http_request.overrideMimeType){
  http_request.overrideMimeType('text/xml');
  }
 } else if (window.ActiveXObject) {
  try{
  http_request = new ActiveXObject("Msxml2.XMLHTTP");
  } catch (e) {
  try {
   http_request = new ActiveXObject("Microsoft.XMLHTTP");
  } catch (e) {
  }
  }
 }
 if (!http_request) {
  alert("您的浏览器不支持当前操作,请使用 IE 5.0 以上版本!");
  return false;
 }
 

//定义页面调用的方法init,不是init();没有();
 http_request.onreadystatechange = init;
 http_request.open('GET', url, true);

//禁止IE缓存
 http_request.setRequestHeader("If-Modified-Since","0");

//发送数据
 http_request.send(null);

//每60秒刷新一次页面
 setTimeout("makeRequest('"+url+"')", 60000);
}

function init() {
 if (http_request.readyState == 4) {
  if (http_request.status == 0 || http_request.status == 200) {
  var result = http_request.responseText;
  if(result==""){
   result = "系统时间获取失败";
  }
  document.getElementById ("sysTimeShow").innerHTML="平台系统时间:"+result;
  } else {//http_request.status != 200
  alert("请求失败!");
  }
 }
}

Tags:Ajax 实现 前提

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接