站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2EE 专题xmlhttp无刷新更新数据问题:为什么取出的数据前面都有两个不可显示的字符

xmlhttp无刷新更新数据问题:为什么取出的数据前面都有两个不可显示的字符

摘要: xmlhttp无刷新更新数据问题:为什么取出的数据前面都有两个不可显示的字符


为什么我在更新了数据库中相应的记录以后,取出来的数据还是原来的数据.麻烦达人给解答一下,以下为两个页面内容.
PS:为什么取出的数据前面都有两个不可显示的字符

2.jsp
<%@ page language="java" import="java.util.*,java.sql.*" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>

<%
String temp=request.getParameter("flowchart");
String entity=request.getParameter("entity");
String sql="select P03,P04 from table"+temp+" where P01="+entity;
appbasebean.getDbTrans().open();
ResultSet rs=appbasebean.getDbTrans().executeQuery(sql);
while(rs.next())
{
String temp1=rs.getString(1);
String temp2=rs.getString(2);
out.print(temp1+"/n"+temp2);
}
appbasebean.getDbTrans().close();
%>



test1.jsp
function createHttpRequest() {
if (window.ActiveXObject) {
return new ActiveXObject('Microsoft.XMLHTTP');
} else if (window.XMLHttpRequest) {
return new XMLHttpRequest();
} else {
throw new Error(9999, '无法创建HttpRequest!');
}
}

function updateDiv() {
var httpRequest = createHttpRequest();
httpRequest.open('GET','2.jsp?flowchart=<%=request.getParameter("FlowChart")%>&entity=<%=request.getParameter("Entity")%>',false);
httpRequest.send(null);
if (httpRequest.readyState == 4) {
if(httpRequest.status==200)
{

var data=httpRequest.responseText;
var mdata=BASEtrim(data);
alert("data="+mdata);
var tdata=mdata.split(//r?/n/);
alert("tdata="+tdata.length);

for(var i=0;i<tdata.length;i++)
alert("tdata="+tdata[i]);
var layer="Layer"+(i+1);
alert(layer);
document.getElementById(layer).innerHTML=tdata[i];
alert("hee");

}
}
else
{ //页面不正常
alert("您所请求的页面有异常。");
}
}
window.setTimeout("updateDiv()",10000);
}


怎么没有达人愿意出手相助一下,嫌分少吗?我可以再加的.请达人不吝赐教.


缓存问题,
在2.jsp里面
<%@page...%>
之后加入
response.setHeader("Cache-Control", "no-cache");


是啊,确实如此,
response.setHeader("Cache-Control", "no-cache");



问题解决了.谢谢楼上两位达人.
在网上找的CZQ共享空间的另外一种解决方法.也可以.方法如下,希望对有同样问题的人会有所帮助.

无刷新XMLHttp的几个问题
申明方式:
var xhImgList;
try {
xhImgList = new ActiveXObject("Microsoft.XMLHTTP");
} catch(e) {
try {
xhImgList=new ActiveXObject("MSXML2.XMLHTTP");
} catch(e) {
xhImgList=new XMLHttpRequest(); } }

解决 XMLHTTP 的缓存问题:
IE 中 XMLHTTP 默认会将内容缓存,GET 方式下只要 URL 没有变化,就会直接使用缓存,不发送任何请求。在网上查找到在Html头加上



经过测试以上方法没有用,后在调用 send 方法前设置 If-Modified-Since 头为一个比较早的日期。如使用
xmlhttp.setRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT");
经测试以上方面有效!


↑返回目录
前一篇: javax.servlet.ServletException: text name must not be null
后一篇: 将表单数据提交到servlet总报404错误,怎么回事?