如何在选中其他复选框时禁用复选框



请帮帮我!我是新手。我有3个分量。如果选中了第一个selectBooleanCheckbox,那么第二个和第三个组件应该被禁用。如果第一个selectBooleanCheckbox未选中,那么第二个和第三个组件应该是活动的。

<h:selectBooleanCheckbox id="checkBox_1" value="#{MyManagerBean.goldRun}"
              valueChangeListener="#{MyManagerBean.valueChangeInput}"/>
<h:selectBooleanCheckbox id="checkBox_2" value="#{MymanagerBean.useResult}" />
<h:selectBooleanCheckbox id="checkBox_3" value="#{MymanagerBean.goldSize}" />

我该怎么做?

 public void valueChangeInput(ValueChangeEvent event) {
       event.getNewValue()......
       .............................
       ..............................
 }

我认为您正在寻找的那种行为只能使用ajax来完成。如果您使用的是JSF2,那么其中就内置了ajax。你可以这样做:

<h:selectBooleanCheckbox id="checkBox_1" value="#{MyManagerBean.goldRun}">
  <f:ajax event="change" render="checkBox_2 checkBox_3"/>
</h:selectBooleanCheckbox>
<h:selectBooleanCheckbox id="checkBox_2" value="#{MymanagerBean.useResult}" disabled="#{MyManagerBean.goldRun}" />
<h:selectBooleanCheckbox id="checkBox_3" value="#{MymanagerBean.goldSize}" disabled="#{MyManagerBean.goldRun}"/>

上面的代码必须是一个表单。

如果你使用JSF 1.2,那么你将需要使用ajax支持的JSF第三方库,如RichFaces/ICEfaces。它们有相似的组件以相同的方式工作

相关内容

  • 没有找到相关文章

最新更新