现在实现的效果是,可以用1.jsp页面调用2.jsp页面,但是问题在于1.jsp页面只能调用编译后的2.jsp
就是说,当我改变数据库中相应内容的值以后,它就不能实现做出相应的改变了。
但是当我将1.jsp和2.jsp运行时,这个问题就解决了,因为在2.jsp实现了自动刷新功能,它可以定时的去获取数据库的值。
抛出问题:那是否可以在同一页面中导入两张jsp页面,然后实现一个通过刷新实现对另一个不刷新页面的更新呢?
客户端页面代码(1.jsp)如下
<html>
<head>
<script language="javascript">
var xmlHttp;
function createXMLHttpRequest(){
if (window.ActiveXObject){
xmlHttp = new ActiveXObject('Microsoft.XMLHTTP');
}else if(window.XMLHttpRequest){
xmlHttp = new XMLHttpRequest();
}
}
function re(){
createXMLHttpRequest();
xmlHttp.open("GET","2.jsp",true);
xmlHttp.onreadystatechange = callBack;
xmlHttp.send(null);
}
function callBack(){
if (xmlHttp.readyState == 4) {
if (xmlHttp.status == 200) {
var str = xmlHttp.responseText;
t.innerHTML=str;
setTimeout('re()',1000);
}
}
}
</script>
</head>
<body onload="javascript:re();">
<span id=t>123</span>
</body>
_____________________________________
服务器端代码(2.jsp)如下
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<jsp:directive.page import="java.sql.ResultSet"/>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<meta http-equiv="Refresh" content="10">
<jsp:useBean id="db" scope="session" class="news.sql_data"/>
<body>
<%
String sql="select * from hzt_task t where title='lsd' ";
ResultSet rs=db.executeQuery(sql);
//int i=0;
while(rs.next()){
// runpercent=rs.getString("runpercent");
out.println(rs.getString("runpercent"));
// i++;
}
%>
</body>
</html>