如果在JSP中选中了复选框,则显示/隐藏内容

时间:2015-02-10 18:42:11

标签: java html jsp

我是JSP和java的新手。我想执行一段代码,如果按下复选框,将显示或隐藏内容。我这样想:如果按下复选框,布尔变量将变为true。如果布尔变量为true,则执行另一个if statment。

但在我的最终结果中,我的所有内容都被隐藏了。有人可以向我解释为什么会发生这种情况,或者给我另一种方法吗?

<%boolean  hide = false;
    String strCheckBoxValue= (String) session.getAttribute("checkweekends");
        if (strCheckBoxValue != null) {
            hide = true;
        } %>
        <c:if test="${hide == true}">

     <c:if test="${a.dateFormat_hideweekends(day+z) !=''}">


     <c:if test="${a.getData(time,day+z, sala)!=''}">
    <TD align="center" valign="middle" width="100" title="${a.getData(time,day+z, sala)}" style="color:#00008B;text-overflow: ellipsis;width: 200px;white-space: nowrap;overflow: hidden;" bgcolor="#FFFF00">
    <c:out value="${a.getData(time,day+z, sala)}"  />
    </TD>
    </c:if>
    <c:if test="${a.getData(time,day+z, sala)==''}">
    <TD align="center" valign="middle" width="100"  bgcolor="#90EE90">
    </TD>
    </c:if>
    </c:if>
    </c:if>

1 个答案:

答案 0 :(得分:1)

这里的问题是你对这段代码的作用有一个根本的误解。您的Java代码在服务器端上执行。当用户单击复选框时,运行的代码将在客户端上运行。

您无法在客户端上使用Java代码,因为它是服务器端语言。这是一个像Javascript这样的客户端语言的工作。例如..

<input type="checkbox" onchange="eventHook()"/>

<script type='text/javascript'>
    function eventHook() {
        // This code is ran when the checkbox is changed.
    }
</script>