我们有一个使用 jQuery 和 Jersey 构建的旧版应用程序。
我添加了一个新的JSP页面。 Servlet设置一个会话变量,然后打开JSP页面。 JSP页面正确显示了变量。
<div id="my_div_id">
<%= session.getAttribute("my_variable") %>
</div>
在关闭页面并在将会话变量设置为新值之后第二次调用servlet之后,JSP将打开并显示会话变量第一次的值。似乎页面的显示部分已被缓存-即使关闭后也是如此。
JSP肯定正在获取变量的新值。这很明显,因为在$(document).ready()
中,我添加了一个console.log()
调用以打印出会话变量的值,并且每次都打印出正确的值。
在页面每次关闭时都会调用的函数中,我尝试了各种方法:
$(#my_div_id).remove()
-不起作用-第二次打开JSP页面,整个div消失了
$(this).remove()
-什么也不做
我应该补充一点,如果打开了新的浏览器选项卡,则会话变量中设置的最后一个值将成功显示在JSP中。
有人可以帮忙吗? 谢谢