這是問題所在,JSF驗證一直在將字段翻轉回最後一個已知值。繞過用於UIInput組件的JSF驗證
我們正在編輯一個支持bean已經有值的頁面。 (頻率=「每週」)
我們需要顯示「請選擇..」的默認值,即使該值不會通過驗證(是的,我只是想讓用戶在頁面上錯誤消息)。
有沒有什麼辦法可以讓用戶選擇「Select ..」並且不會將它重置爲最後的好值?
用戶不會被允許明顯保存,但我們希望保留其無效值。
- 用戶增加了新的對象,從選擇合適的降值開始向下
- 用戶成功保存。
- 用戶點擊「編輯」,並顯示對象與已知的值(「每週」)
- 用戶改變「每週」到「選擇」
- 用戶點擊保存 示
- 驗證消息(良好),但頻率變返回上一個值「每週」(壞,我需要它繼續「請選擇..」,並讓用戶手動修復下拉菜單
immediate =「true」對inputComponents不起作用commandComponents。
謝謝Balus! 我玩過這一點,但一旦用戶點擊「提交」的價值仍然會恢復它不會?或者,當整個頁面在提交後重新呈現時(我認爲它不會),這個呈現也適用。 – Eddie 2010-12-15 15:22:33
也使用ajax。如果需要,在'h:commandButton'裏面加' ',並在消息ID上加上'render'。 –
BalusC
2010-12-15 15:28:26
這是現場反饋的便利技巧,並立即顯示他們的錯誤。 但即使在我的命令按鈕中使用render =「messageList」(我在按鈕上方使用單個messgae框)中的ajax,保存操作仍然會將messageList翻轉回預驗證值。 ..... 也許我會讓實況信息閱讀「這個值是必需的,如果沒有設置,將返回到先前的值」 – Eddie 2010-12-15 16:38:58