解决方案 »
- 请各位高手帮我看看,为什么前台不能取到正确的JSON值
- 过滤器的类~~还有小小未搞清楚,,~~送20分了,,大家来看看
- 基于httpclient制作即时通讯
- php接收不到jsp通过 url传过来的参数(含中文)该怎么办呢?
- 关于log4j.properties 文件的配置 和 程序调用日志输出的问题 大家帮帮忙,明天要提交Sample
- 求助:关于jsp中使用xml
- 关于JavaBean属性嵌套的问题
- 来看一下这个问题
- 惊喜:刚发现的免费在线电影站,只要注册一下就可以看!速度超快,清晰度高,最新大片竟然都有。没有病毒!放心打开看吧!网址:http://w
- 硬是笨得很啊!:(, 我一定要在javabean中用数组,可始终不行,兄弟姐妹,help me....,急,我在这等你们了:(
- Jsp页面跳转出问题
- 这种形式的网页即时聊天该如何实现??
浏览器环境 跟 应用服务器 完全是两个没有直接关系的运行环境。当应用服务器通过JSP+EL+Tag等生成了HTML给浏览器后,JS脚本就只能孤单的在浏览器中运行了,在此过程中,如果JS没有借助Ajax等重新跟服务器端发生交互,则根本无法得到服务器端任何新的信息。至于你说的application、request等对象,都是服务器端的对象。另外就是假设你正确的使用了Ajax,仍然得到的是旧数据,那么主要可能的原因是浏览器端缓存。
解决这个问题的主要方法是在你Ajax请求的JSP或Servlet中,要明确要求浏览器缓存失效,比如:
response.setHeader("Cache-Control", "no-cache, no-store"); //HTTP 1.1
response.setHeader("Pragma", "no-cache"); //HTTP 1.0
response.setDateHeader("Expires", 0); //prevents caching at the proxy server
function createXMLHttp(){
if(window.XMLHttpRequest()){
xmlHttp=new XMLHttpRequest();
}else{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
showMsg();
setInterval("check()", 2000);setInterval("showMsg()", 2000);
}
function showMsg(){
xmlHttp.open("POST","content");
xmlHttp.onreadystatechange=showMsgCallback;
xmlHttp.send(null);
}
function showMsgCallback(){
// alert(xmlHttp.status+" "+xmlHttp.readyState);
if(xmlHttp.readyState==4){
if(xmlHttp.status==200){
var text=xmlHttp.responseText;
document.getElementById("msg").value=text; //用textArea显示
}
}
}
function check(){alert("appli:"+"${fn:length(applicationScope.message)}");
if(size!="${fn:length(applicationScope.message)}"){
showMsg();
size="${fn:length(applicationScope.message)}";
alert(size);
}
}谢谢你一直以来耐心的解答^_^
如果用以上的其实是可以的 试过打开3个 也可以工作 不过ajax每隔2s这样去取一次数据是不是到最后量大了就会有问题....