22

acceptフォームには、2 つの commandButton (1 つは to 、もう 1 つは to ) を持つ inputText がありcancelます。

キャンセル ボタンのみの検証を無効にするにはどうすればよいですか?

<h:form id="detailsForm">
  <p:inputText id="editUsername" value="#{userController.editUser.usrUsername}" />
  <p:inputText id="editFirstName" value="#{userController.editUser.usrFirstName}" />
  <p:inputText id="editLastName" value="#{userController.editUser.usrLastName}" />
  <p:commandButton value="Accept" update=":detailsForm" actionListener="#{userController.onDetailsEditAccept}" />
  <p:commandButton value="Cancel" update=":detailsForm" actionListener="#{userController.onDetailsEditCancel}" />
</h:form>

フィールドに挿入しようとrequired="false"しましたが、うまくいきませんでした。フィールドへの挿入も試み<f:validateBean disabled="true" />ましたが、うまくいきませんでした。

4

3 に答える 3

34

immediate="true"キャンセルで属性を使用しますcommandButtonこれにより、「リクエスト値の適用」、「プロセス検証」 、 「モデル値の更新」の各フェーズをスキップすることで、フォームの処理全体をスキップできます。

<p:commandButton value="Cancel" update=":detailsForm" actionListener="#{userController.onDetailsEditCancel}" immediate="true"/>
于 2013-02-19T13:15:01.260 に答える
15

process="@this"[キャンセル] ボタンで属性を使用します。これにより、フォーム全体が送信されなくなります。

または、代わりに使用できます(ただし、これには属性p:buttonがありません)。この他の Q/AactionListenerを参照してください

于 2013-02-19T13:25:48.123 に答える