2011-03-30 48 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组件库。

相关问题