0

ページを誤って更新すると、JSF / ADF/PPRで問題が発生します。5つのオプションを含むselectManyCheckBoxがあります。オプションの1つは「すべて」です。ユーザーがそのチェックボックスをオンにした場合、他のすべてのチェックボックスをオンにする必要があります。

<h:panelGrid styleClass="myBox leftAligned" id="applyChangesBox">
            <af:selectManyCheckbox id="changesCheckedBox" 
                   autoSubmit="true" label="Hello: "
                   value="#{updateForm.applyChangesList}" 
                   valueChangeListener="#{updateForm.testValueChanged}">
              <af:selectItem value="A" label="All Changes"/>
              <af:selectItem value="R" label="Residential Address"/>
              <af:selectItem value="M" label="Mailing Address"/>
              <af:selectItem value="P" label="Personal Phone/Fax Numbers"/>
              <af:selectItem value="E" label="Personal Email Addresses"/>
            </af:selectManyCheckbox>
            <af:outputText value="#{updateForm.testValue}" partialTriggers="changesCheckedBox"/>
          </h:panelGrid>

私はvalueChangeListenerを使用して、Beanが更新されて正しく印刷されていることを確認できますが、ページが更新されず、必要に応じて他のすべてのチェックボックスをオンにします。

4

2 に答える 2

0

次のことを試してください。

  1. を使用しないでくださいvalueChangeListener。ロジックをsetApplyChangesList()Bean のメソッドに移動します。
  2. partialTriggers="changesCheckedBox"選択項目に追加します。
  3. <h:panelGrid/>または、を ADF コンポーネントに置き換え、そのpartialTriggers属性を設定してselectManyCheckboxoutputText

また

を置き換えて、あなたが望むように見える属性をselectManyCheckbox使用selectManyListしてください。selectAllVisible

これらの新しいチートシートは素晴らしいです! http://www.oracle.com/technology/products/adf/adffaces/11/doc/cheatsheet/lovs.html

于 2010-04-02T16:39:58.623 に答える
0

質問が非常に古いことは知っていますが、他の人がまだこの問題を抱えている可能性があります。出力自体ではなく、親に partialTrigger を配置することをお勧めします。このようにして、親パネルが出力とともに再描画されます。次に、トリガーに応答するコンポーネントの「id」フィールドを設定することをお勧めします。

于 2014-04-06T14:54:52.317 に答える