2011-03-09 69 views
0

大家好,AJAX验证没有坚持

我想设定一些验证我的Seam应用&我有工作,但它有一些副作用,我想避免的。我已将输入表单中的字段设置如下:

<label for="displayName" class="required">Display Name:</label> 
<s:decorate id="displayNameDecorate" styleClass="errorwrapper"> 
    <h:inputText id="displayName" value="#{presenceHome.instance.displayName}" required="true"> 
     <a4j:support event="onblur" reRender="displayNameDecorate" ajaxSingle="true"/> 
    </h:inputText> 
    <a4j:outputPanel ajaxRendered="true"> 
     <h:message for="displayName" styleClass="errormessage"/> 
    </a4j:outputPanel> 
</s:decorate> 

此方法正常工作。如果我输入的显示名称被认为无效,则会显示验证错误。我遇到的麻烦是输入的值有效。当我列出该字段时,a4j:支持会引发数据验证(通过),然后持续。现在,如果在进入下一个字段后,我决定不想编辑此记录,则无法取消,恢复我的更改 - 我的更改已保存到数据库。

是否有反正我可以让AJAX验证失火但没有任何持续发生?或者我只需要忘记ajax验证,并在表单提交时发出响应。

回答

0

我不知道发生了什么事在你展示的代码,但是会使用类似的RichFaces' <丰富:ajaxValidator>不是使生活更轻松?文档页面是here

+0

我以前没见过RichFaces标签。功能列表中的第一个状态是“跳过除验证之外的所有JSF处理”,这正是我想要的。所以谢谢你指出。 – 2011-03-11 06:58:25