2

在 jsp 文件中,有没有办法在该页面上找到一个组件并检查该组件是否有效。

假设我有一个输入字段和一个带有复杂 html 的 panelGroup,如果输入字段上的验证失败,则应该显示该面板组。我真正在寻找的是用于 panelGroup 上的渲染属性的 EL 表达式。

我尝试使用自定义验证器函数,在这里将 panelGroups 呈现的值设置为 true。但随后它在必填字段上失败,因为当该字段为空时,自定义验证器函数从未运行。

现在我已经完全避免了常规验证,并使用一些相当丑陋的代码来验证提交时的所有内容。然后将结果存储在许多实例布尔值中,用于在 panelGroups 中呈现。

任何帮助深表感谢

4

1 回答 1

4

你可以利用UIInput#isValid().

这是一个启动示例:

<h:form>
    <h:inputText binding="#{input}" value="#{bean.input}" required="true" />
    <h:commandButton value="submit" action="#{bean.submit}" />
    <h:messages />
</h:form>
<h:outputText value="input is not valid!" rendered="#{!input.valid}" />

请注意,您在binding属性中使用的名称不应与任何请求范围的属性/bean 的名称冲突。

于 2010-07-02T21:35:45.123 回答