0

arrayList に JSF 内の特定の要素が含まれているかどうかを確認したいと思います。

ArrayList は、2 つの値を含む非 TradList です。sProcessorView は Java クラスのインスタンスです

JSFページは以下のようなものです -

<h:commandButton id="p"
                 value="#{msgs['SP.Pend.Button.Label']}" 
                 type="button"
                 disabled="#{securityView.readOnlyUser or sPView.readOnly}">
    <rich:toolTip style="white-space:nowrap" value="Ctrl-Shft-P" />
    <a4j:support event="onclick"
                 oncomplete="if ((!#{sProcessorView.autoFetchNext}) &amp;&amp; 
                                   #{sProcessorView.nonTradList.contains('100')} &amp;&amp;
                                   #{spProcessorView.nonTradList.contains('111')} ) openSimplePop() ; 
                             else openModal();" />
</h:commandButton>

EL は既に存在しますか、それともカスタム タグを作成する必要がありますか?

この JSF から Java メソッドを呼び出して結果を取得することもできますか?

これについて何か助けていただければ幸いです

4

1 に答える 1

1

ブール値を返すメソッドをManagedBeanに作成できます

public boolean containsValue() {
   //Check if the value is in the list...
}

そしてあなたのページで、あなたはこれをすることができます:

var showModal = #{bean.containsValue()};
if(showModal) {
   openModal();
} else openSimplePop();

このようにして、ManagedBeanのリストに値が含まれているかどうかを確認できます。含まれている場合、メソッドはtrueを返し、これはJS変数に設定されます。

于 2012-09-13T16:58:43.373 に答える