Rich Faces AjaxValidator与selectOneMenu一起工作吗



Folks,

这是一个JSF问题,专门针对RichFaces3.3.Final

我正试图让RichFacesAjaxValidator(Rich:ajaxValidator(使用标准JSF下拉菜单(h:selectOneMenu(,但我失败得很惨。

基本上,我希望AJAX验证在下拉列表失去焦点或下拉列表中的一个项目被选中时发生。以下是我尝试的最后一件事的代码:

<h:selectOneMenu id="sector" value="#{thing.sector}">  
  <f:selectItems value="#{selectItemMap['sectors']}"  
                 var="sector"  
                 itemLabel="#{msg[sector.itemLabel]}"  
                 itemValue="#{sector.itemValue}" />  
    <rich:ajaxValidator event="onblur"/>  
</h:selectOneMenu>  

但我也尝试过:

<rich:ajaxValidator event="oninputblur"/>  

<rich:ajaxValidator event="onchange"/>  

<rich:ajaxValidator event="onchanged"/>  

     <rich:ajaxValidator event="onblur"/>  
<rich:ajaxValidator event="onchanged"/>

<rich:ajaxValidator event="onblur"/>  
<rich:ajaxValidator event="onchange"/>  

<rich:ajaxValidator event="oninputblur"/>  
<rich:ajaxValidator event="onchange"/>  

<rich:ajaxValidator event="oninputblur"/>  
<rich:ajaxValidator event="onchanged"/> 

然而,这些都不起作用。我的意思是,我看不到任何事情发生,尽管我可以在日志控制台中看到其他字段的事件,如h:inputText、标准HTML输入和rich:calendar。

有人成功地让Rich Faces AJAX验证为selectOneMenu字段工作吗?你是如何做到的?哦,那是什么版本的富脸?

谢谢。

以下是我使用Richfaces 3.3的旧应用程序的示例:

<h:selectOneMenu
    id="users"
    value="#{userBean.user}"
    required="true"
    requiredMessage="Selected user is required."
    converter="selectItemConverter">
    <rich:ajaxValidator ajaxSingle="true" event="onchange" />
    <f:validator validatorId="isValidValidator" />
    <t:selectItems 
        value="#{userBean.users}"
        var="user" 
        itemLabel="#{user.name}"
        itemValue="#{user}" />
</h:selectOneMenu>
<rich:message for="users" errorClass="error"/>

Doh!

以下确实有效:

<h:selectOneMenu id="subSector" value="#{registerContracts.currentContract.subSector}">
  <f:selectItems value="#{selectItemMap['RctSectorTypes']}" var="subSector" itemLabel="#{msg[subSector.itemLabel]}" itemValue="#{subSector.itemValue}" />
  <rich:ajaxValidator event="onblur"/>
  <rich:ajaxValidator event="onchange"/>
</h:selectOneMenu>

显然,我在测试上述选项时不够勤奋。

很抱歉。

相关内容

  • 没有找到相关文章

最新更新