日期:2014-05-17  浏览次数:20672 次

IE7AJAX查询不了更新的数据
我用AJAX查询的数据,在数据更新了以后IE6可以查询出新的数据,IE7不能,为什么啊,各位高手帮一下忙!

------解决方案--------------------
有人会吗,帮一下忙啊
------解决方案--------------------
AJAX 建议用框架,,,用jquery 吧,,让你知道实现AJAX 是多么轻松
------解决方案--------------------
按有几个群,你不妨加进去,可以和大家一起讨论啊.........46986340,28039577,4804620
在那里看看有无能回答你的,谢谢,LZ,甭忘了给俺分哦,谢谢LZ
------解决方案--------------------
IE7,毛病多多,我系统刚更新,IE也更新了,结果发现好多毛病,连图片预览的效果也没了,不过我的AJAX联动可以实现

------解决方案--------------------
原因: 因为 Ajax 其实是 JavaScript 提交任务的方法,但是JavaScript 中有一个缺点,就是
当你每次触发的时候他都会检测一下 你是否已经触发过,如果你之前触发过,
那么他会将上次得到的结果给你。
解决方案: 在XmlHttp.open() 之后加入xmlHttp.setRequestHeader("If-Modified-Since","0");


完整的function 

function logon(para){
if (!checkLogon(para)){
return;
}
if (xmlHttp == null)
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
var url = "Logon?userName=" + para.userName.value + "&password=" + para.password.value;
xmlHttp.open("GET", url, true);
xmlHttp.setRequestHeader("If-Modified-Since","0");///////////*Focus here********/ xmlHttp.onreadystatechange = callBackLogon;
xmlHttp.send(null);
}
function callBackLogon(){
if (xmlHttp.readyState == 4){
if (xmlHttp.status == 200){
logonResult(xmlHttp.responseText);
}
}
}
function logonResult(para){
switch(para){
case '-1':
alert("数据库操作失败");
break;
case '0':
alert("没有该用户");
break;
case '1':
frmLogon.submit();
break;
case '2':
alert("密码不正确");
break;
default:
alert("未知原因,请纪录下面的号码!!!\r\n错误号:" + para);
break;
}
}