我是struts2的新手。我有页面显示元素列表。每个元素都包含用于打开另一个窗口以显示相关信息的链接。首先点击该链接,从db获取deatils并正常工作。但第二次它显示以前显示的数据。同样的事情正在IE 7正常工作。在IE8中它解决了这个问题。如何以编程方式重新编写它?
答案 0 :(得分:2)
确保您明确禁用网页上的缓存。以下是在scriptlet的JSP顶部完成的操作:
<%
response.setHeader("Cache-Control","no-cache"); //HTTP 1.1
response.setHeader("Pragma","no-cache"); //HTTP 1.0
response.setDateHeader ("Expires", -1);
%>
对于额外的IE缓存破坏功能,您可以在<head>
下方添加第二个</body>
。完整的代码,包括上面的scriplet,如下所示:
<%
response.setHeader("Cache-Control","no-cache");
response.setHeader("Pragma","no-cache");
response.setDateHeader ("Expires", -1);
%>
<html>
<head></head>
<body>
Your body content
</body>
<!--[if IE]>
<head>
<meta http-equiv="pragma" content="no-cache"/>
<meta http-equiv="Expires" content="-1"/>
</head>
<![endif]-->
</html>
请注意,您在条件评论中提供了第二个无效<head>
,因此只有我们的特殊朋友 IE才能获得它。