在焦点丢失后使用ajax触发JSF验证



当组件失去焦点时,如何使用ajax触发对输入组件的验证,而不是等待表单手动提交?

<f:ajax event="blur">放到UIInput组件中,该组件将重新呈现与该组件相关的<h:message>

<h:inputText id="foo" value="#{bean.foo}" required="true">
    <f:ajax event="blur" render="fooMessage" />
</h:inputText>
<h:message id="fooMessage" />

另请参阅JSF 2.0教程与Eclipse和Tomcat -视图和调优验证

试试下面的代码:

<h:inputText value="#{bean.value}" valueChangeListener="#{bean.validateValue}">
    <f:ajax event="blur" render="valueError"/>
</h:inputText>
<h:outputText id="valueError" value="#{bean.valueErrorMessage}" style="color: red;" />

如果用户更改了输入组件中的值,您可以使用valueChangeListener对其进行验证。如果用户随后移动到另一个输入组件,则将呈现outputtext组件。如果验证失败,您可以在那里显示一条消息。

相关内容

  • 没有找到相关文章

最新更新