0

お願い助けて!私は初心者です。の 3 つのコンポーネントがあります。最初の selectBooleanCheckbox がチェックされている場合、2 番目と 3 番目のコンポーネントは無効にする必要があります。最初の selectBooleanCheckbox がチェックされていない場合、2 番目と 3 番目のコンポーネントがアクティブになります。

<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()......
       .............................
       ..............................
 }
4

1 に答える 1

3

あなたが探している種類の動作は、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 をサポートするRichFaces / ICEfacesなどの JSF サードパーティ ライブラリを使用する必要があります。それらには、同じように機能する同様のコンポーネントがあります。

于 2011-09-14T12:40:17.170 に答える