选中复选框后禁用/启用jsp页面

时间:2012-07-11 11:52:21

标签: jsp events spring-webflow

我在某个jsp页面中有一个复选框...如果选中该复选框,abc.jsp将触发...如果未选中xyz.jsp应该触发...任何人都可以帮助我实现这个目标...我想在jsp中拥有代码行......

这就是我在我的一个类文件

中所拥有的
private boolean useNis = false;

public boolean isUseNis() {
return useNis;
    }

public void setUseNis(boolean useNis) {
this.useNis = useNis;
    }

在我的hbm.xml文件中,以下是我唯一的一行

<property name="useNis" type="yes_no" column="USENIS" not-null="true"/>

在abc.jsp中,我有这段代码

<form:checkbox path="useNis"/>
<input type="hidden" value="1" name="_useNis"/> 

在xyz.jsp中,我有这些行

<c:choose>
<c:when test="${Location.useNis==true}">
<button type="submit" name="_eventId_searchLoadKeys"><fmt:message key="SEARCH" /></button> 
</c:when>
<c:otherwise>
<button type="submit" name="_eventId_searchNisLoadKeys"><fmt:message key="SEARCH" /></button>
</c:otherwise>
</c:choose>

<c:when test="${Location.useNis==true}"> ... xyz.jsp中的这一行应检查是否选中了复选框!如果这个问题得到解决,我会得到我想要的东西..

1 个答案:

答案 0 :(得分:0)

由于在客户端更改了复选框,因此在第一个JSP中完全具有逻辑的唯一方法是使用客户端代码。即JavaScript。

“WebFlow”方法是将复选框绑定到模型属性,并使用流配置文件中的decision-stateaction-state来检查该属性的值。命令决定将两个JSP view-state中的哪一个转换为下一个。

flow.xml部分的示例:

<var name="checkboxForm" class="package.CheckboxFormBean"/>

<view-state id="start" view="start.jsp" model="checkboxForm">
    <transition on="submit" to="checkCheckbox"/>
</view-state>

<decision-state id="checkCheckbox">
    <if test="checkboxForm.checked" then="abc" else="xyz"/>
</decision-state>

<view-state id="abc" view="abc.jsp"/>

<view-state id="xyz" view="xyz.jsp"/>

您的package.CheckboxFormBean课程将采用boolean isChecked()方法。