2013-04-01 27 views
0

我目前正在嘗試創建一個切換,當按下時用當前布爾值的相反值重新加載頁面。當鏈接被按下時設置JSTL會話變量

<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> 

這是我試過的當前解決方案,但不幸的是它不起作用。由於首先編譯了JSP部分,因此它似乎在每次頁面加載時運行變量聲明,而不是onclick。還有其他可能的解決方案嗎?謝謝您的幫助!

+0

你需要的頁面重載或不? –

+0

是的,我確實需要重新加載頁面。 – Bird

回答

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);