如何在使用后退按钮后强制更新java bean?
问题描述:
假设我有一个名为index1.jsp的jsp页面。在这个页面上,我有一个复选框 ,如下所示。如何在使用后退按钮后强制更新java bean?
<form name="form1" method="post" action="index2.jsp">
<input type="checkbox" name="check">
在我的服务器我有一个Java bean说,有setCheck和getCheck 功能为myBean。
我最后还有以下内容。
<input type="submit" value="Submit" >
</form>
我选中该复选框,点击提交按钮,我去到下一个页面, 和为myBean的功能setCheck被调用。
然后我点击我的浏览器的后退按钮,回到index1.jsp 取消勾选复选框,然后点击提交按钮。我再次访问index2.jsp,但是这一次,mybean没有更新,setCheck没有被调用,当我检查这个值时,mybean的“check”变量仍然是“on”,尽管我刚转身它关了。
任何人都可以告诉我如何回到jsp页面,取消选中该按钮并将其反映在我的bean中,该成员变量的名称与我的jsp中的复选框名称相同?
答
当您在浏览器上按下“返回按钮”时,它将返回到前一个JSP的缓存版本(已回复)。
试试这个:
将此代码添加到您的JSP会导致大多数的浏览器不缓存响应:
<%
response.setHeader("Pragma","no-cache"); // HTTP 1.0
response.setHeader("Cache-Control","no-store"); // HTTP 1.1
response.setDateHeader("Expires", 0);
%>