IE7/IE8缓存问题
使用ajax删除页面上的记录时,会有这种情况出现:第一次删除操作后,将光标定位在地址栏中,回车,页面正常显示(删除的记录消失),当我们再次删除其他记录时,地址栏回车,此时,删除的记录又会重现。这就是IE缓存在作怪。
大致有两种解决方案:
1、给ajax请求添加随机数,如:
new Ajax.Request('/common/inputphrase/inputPhraseDelete.html',
{
method: 'post',
parameters: "参数名=" + 参数值 + "&time="
+ new Date().getMillisecond() , evalScripts: true,
};
parameters选项的后半部分( "&time="+ new Date().getMillisecond() )就是随机数,还可用
Math.random()获得随机数。
2、在页面的<head>元素中添加:
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META
HTTP-EQUIV="Expires" CONTENT="-1">
在IE8中我的结论是只使用第一种解决方案不可行(原因好像是IE8对于Ajax就需要随机数),单独使用第二种解决方案可行。安全起见我的意见是两种方案都使用。