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

王朝other·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

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

<html>

<body onload="makeRequest("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("请求失败!");

}

}

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航