validation - OmniFaces validateOrder 禁用

标签 validation jsf jsf-2 omnifaces javascript

我正在尝试使用 validateOrder 组件来验证两个 java.util.Date 对象。它类似于展示示例 on this link (PrimeFaces example) 。一切都很完美,但我有一个问题:

如果不需要第二个日期字段怎么办?

在这种情况下,我收到空指针异常,并且由于 validateOrder 具有“禁用”属性,我想知道每次插入/删除第二个日期时是否值得/可能通过 ajax 启用/禁用它。如果没有,我想我会坚持使用 Balus 的 JSF2.0 跨领域验证方法 that you can read about on this link .

最佳答案

disabled属性检查第二个字段是否填写。如果没有填写,则与字段的客户端ID关联的请求参数值为空。使用 exaclty 让 disabled 属性计算为 true

<p:calendar ... binding="#{endDate}" />
...
<o:validateOrder ... disabled="#{empty param[endDate.clientId]}" />

代码按原样。绑定(bind)不需要额外的支持 bean 属性。

另请参阅:

关于validation - OmniFaces validateOrder 禁用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20908074/

相关文章:

jsf - 使用 p :commandbutton 提交多个表单

javascript - 不支持使用 tinyMCE 编辑器的大文件内容

javascript - Vee-validate 独立验证来自父级的组件,无需使用 EventBus

validation - 如何在 Sanity 中验证上传图像的尺寸?

java - 未绑定(bind)的 sessionScoped ManagedBean 值

java - 使用多线程通过 AJAX 实时交换数据

jsf-2 - 重定向到已配置的 <error-page> 时出现异常 (HTTP 500)

jsf - 在 JSF 中迭代,使用 for 每个循环渲染纯 HTML <div> 元素

javascript - FormData() 对象在 Django 后端始终为空

html - 当没有在框中输入内容但光标仍在框中使用angular js时,如何使红色输入框出错?