我正在尝试创建一个切换按钮,当按下时会重新加载与当前布尔值相反的页面。
<s:url action="mainMenuLabelToggle" var="mainMenuToggle"></s:url>
<a href="${mainMenuToggle}" onclick="<s:set var ="LabelToggle" value
="!#session.LabelToggle" scope="session"/>"> view without labels </a>
<br>
这是我尝试过的当前解决方案,但遗憾的是它不起作用。它似乎在每个页面加载而不是onclick上运行变量声明,因为我认为首先编译JSP部分。还有其他可能的解决方案吗?谢谢您的帮助!
答案 0 :(得分:0)
onclick="toggleLabel();"
<script type="text/javascript">
function toggleLabel(){
$.ajax("<s:url action='mainMenuLabelToggle'/>");
document.location.reload(true);
}
</script>
在动作类
中boolean labelToggle = session.get("labelToggle");
session.put(!labelToggle);