我目前正在开发一个动态表单系统,并且必须实现一个功能,其中用户(设置应从某些预定义字段显示哪些表单字段)必须能够定义哪些输入字段是必需的,哪些不是。还必须设置以下内容:“应显示字段A和B.您需要至少填写其中一个(A或B,或者如果您想要A和B)来提交表单。”
我已存储以下数据:
0: not displayed
1: displayed
2: displayed and required (w/o any dependency to another field)
greater than 1: Custom identifier
示例:
name: 1
birthday: 2
city: 2
x: 3
y: 3
postal code: 0
使用该设置,用户必须填写名称 生日或城市以及x或y。
JSF是否支持那种“必需”字段?
此致
答案 0 :(得分:2)
在primefaces 4.0(http://www.primefaces.org/docs/vdl/4.0/primefaces-p/inputText.html)的文档中,属性required
接受javax.el.ValueExpression
必须评估到java.lang.Boolean
。
我的理解将导致创建一个返回Boolean
的backbean函数,并使用您自己的逻辑来确定它是true
还是false
(考虑到帐户)用户设置和当前元素。)
答案 1 :(得分:0)
不,这种交叉现场验证不是开箱即用的。您需要通过自定义验证来实现此目的。