2011-03-30 53 views
1

我有一個由幾個部分組成的JSF 1.2表單。使用立即`取消按鈕,但只保存一些字段

我已驗證與required標記打開。

我希望能夠清除具有必填字段的表格的某個部分,因此我在使用immediate標籤的「清除」按鈕上進行了操作。

現在的挑戰 - 當按下'清除'按鈕時,自上次提交後填充的所有值都會恢復到最後提交的狀態,而我只希望影響表格的特定部分。 (意思是,所有不屬於表格的那部分的值應該被設置,儘管按下的按鈕是immediate

有沒有辦法做到這一點?

編輯 - 我可以在每次填充後提交一個值嗎?這可能是一個解決方案。

謝謝!

回答

4

如果您想在immediate="true"的同時取消某些字段以及取消按鈕,那麼您還應該在這些字段中輸入immediate="true"

如果你想跳過這些字段的驗證,以及,那麼你需要改變required="true"required="#{empty param['formId:cancelButtonId']}"這樣,當取消按鈕是被用來提交表單僅要求。

至於提交更改值,最好用ajax和值更改監聽器一起實現。爲了達到這個目的,你需要升級到JSF 2.0或者引入一個Ajax化的JSF組件庫。

相關問題