私はp:dialog
に必要な入力フィールドを持っています。最初にフィールドに何も入力しなかった場合、そのフィールドで検証エラーが発生します。それから、ダイアログを閉じてもう一度開くと、検証エラーがまだ残っています。ダイアログを閉じるときに検証エラーをなくすにはどうすればよいですか?ダイアログを再オープンすると、ダイアログボックスで検証を消去する方法が失敗する
9
A
答えて
1
私はあなたのケースを再現することができました、あなたは次のことを行うことができます:
- あなたのダイアログ
closable="false"
を行います。 - ダイアログを非表示にする
Cancel
ボタンを追加します。 - Cancelボタンの中にPrimefaces ExtensionsのresetInputコンポーネントを追加します。フォームの検証と値がクリアされます。ここで
wvDialog
という名前widgetVar
として、あなたのダイアログを想定例です。あなたが必要な場合は
<p:commandButton value="Cancel" immediate="true" onclick="wvDialog.hide()">
<pe:resetInput for="myDialogFormId />
</p:commandButton>
あなたも、ボタンactionListener
でBeanメソッドを呼び出すことができます。
私はそれが役に立ちそうです。
0
フォームを送信するたびにp:dialog
またはp:message
を更新してください。
更新の属性をp:commandButton
とすることで可能です。
<p:commandButton update="ID_OF_DIALOG" />
7
ダイアログボックスを開く必要がある要素には、p:resetInput
を使用する必要があります。
あなたはp:commandButton
<p:commandButton value="Open dialog" update=":dialogId" oncomplete="PF('dialogWidget').show()" >
<p:resetInput target=":dialogId" />
</p:commandButton>
を使用する場合、例えば、これは、ダイアログを開いたときに(検証メッセージを含む)、キャッシュされた値をリセットします。
関連する問題
- 1. Grailsのカスタム検証エラーを消去する方法
- 2. ヘルプが必要ダイアログボックスの要素を消去するAngularJS
- 3. SignUpの検証が失敗する
- 4. ノックアウト検証が失敗する
- 5. 検証に失敗したフォームを再入力する
- 6. PHPで検索クエリを消去する方法は?
- 7. ヒストリで再訪するときにhtmlフォームを消去する
- 8. 再起動時に開発データストアを消去する方法
- 9. SSL証明書データを消去する方法
- 10. Androidでカスタマイズしたダイアログからデータを消去する方法は?
- 11. カスタムアイテムcanvasを消去する方法vis.js
- 12. Semantic-UI - ドロップダウンキャッシュを消去する方法
- 13. osxfuse:キャッシュを消去する方法は?
- 14. App Engine - クッキーを消去する方法
- 15. UIWebViewを消去する方法
- 16. スチームアップビューを消去する方法
- 17. master.dbo.sysprocessesを消去する方法は?
- 18. 検証が失敗したときにカスタムメッセージを作成する
- 19. データを消去するとサービスを停止する方法は?
- 20. Woodstox/Stax2でXMLを記述するときに検証が失敗する
- 21. Yii 2でクライアント側の検証が失敗した場合にモデルを再初期化する方法は?
- 22. Javaソケットを再オープンする方法
- 23. 検証の際にメソッドが失敗する前にAOPから戻す方法
- 24. XSD検証が失敗している
- 25. フォーカスを失うとすぐにフィールドを検証する方法
- 26. 後で処理する前にダイアログボックスを消す方法は?
- 27. Symfony2における制約の失敗の検証を中止する方法
- 28. カスタムエラーを追加して検証を失敗/失敗させる
- 29. struts2の検証:検証に失敗したときにドロップダウンリストを再作成
- 30. ベクトルを消去または消去するC++の最速の方法
偉大な答えをありがとう!ボタン右上隅に閉じるボタンが本当に必要です...... – ethanjyx
私のページに 'oncomplete = 'PF(" wvDialog ")。hide();' 'という* Cancel *ボタンがあります。しかし、まだダイアログを開くとそこにエラーメッセージが表示されます。 –