2

jspファイルで、そのページでコンポーネントを見つけて、そのコンポーネントが有効かどうかを確認する方法はありますか。

入力フィールドと、入力フィールドで検証が失敗した場合に表示される複雑なhtmlを含むpanelGroupがあるとします。私が本当に探しているのは、panelGroupのレンダリングされた属性のEL式です。

カスタムバリデーター関数を試してみました。ここでは、panelGroupsのレンダリング値をtrueに設定しています。ただし、このフィールドが空の場合はカスタムバリデーター関数が実行されなかったため、必須フィールドで失敗しました。

今のところ、定期的な検証を完全に回避し、送信時にすべてを検証するためにかなり醜いコードを使用しています。次に、結果を多くのインスタンスブール値に格納します。これらのブール値は、panelGroupsでのレンダリングに使用されます。

どんな助けでも大歓迎です

4

1 に答える 1

4

を利用できますUIInput#isValid()

キックオフの例は次のとおりです。

<h:form>
    <h:inputText binding="#{input}" value="#{bean.input}" required="true" />
    <h:commandButton value="submit" action="#{bean.submit}" />
    <h:messages />
</h:form>
<h:outputText value="input is not valid!" rendered="#{!input.valid}" />

binding属性で使用する名前は、リクエストスコープの属性/Beanの名前と衝突しないように注意してください。

于 2010-07-02T21:35:45.123 に答える