Jsf A4J richfaces 3不';行不通

Jsf A4J richfaces 3不';行不通,jsf,richfaces,jboss5.x,jsf-1.2,ajax4jsf,Jsf,Richfaces,Jboss5.x,Jsf 1.2,Ajax4jsf,我正在使用JBoss5.01和richfaces:3.3。当第一个h:selectOneMenu id=“codOrgao”更改时,我需要获取第二个h:selectOneMenu id=“ano”的年份值,然后加载第三个h:selectOneMenu id=“codMembro”。这就是我写的代码,我不知道原因,但是不起作用 a4j supporte不起作用(在valueChangeListener=“#{populmembros.pegaListaMembros}类中,我编写了一个简单的Sys

我正在使用JBoss5.01和richfaces:3.3。当第一个h:selectOneMenu id=“codOrgao”更改时,我需要获取第二个h:selectOneMenu id=“ano”的年份值,然后加载第三个h:selectOneMenu id=“codMembro”。这就是我写的代码,我不知道原因,但是不起作用

a4j supporte不起作用(在valueChangeListener=“#{populmembros.pegaListaMembros}类中,我编写了一个简单的System.out.println(“listener called”)“以查看是否调用了该方法,但没有调用)。提前感谢您的帮助

<h:form styleClass="labelPorCima">
<h:panelGrid id="mpanel">   

        <div class="content field">
            <label for="codOrgao">Selecione um orgão</label>    
            <h:selectOneMenu id="codOrgao" styleClass="textoLongo" valueChangeListener="#{populaMembros.pegaListaMembros}">                                                                                             
                <f:selectItems  value="#{populaOrgaosBean.listaItensOrgaos}" />
                <a4j:support event="onchange" reRender="codMembro"/>    
            </h:selectOneMenu>
        </div>

        <h:selectOneMenu id="ano" styleClass="inputNome">               
            <f:selectItem itemLabel="2012"/>
            <f:selectItem itemLabel="2011"/>
            <f:selectItem itemLabel="2010"/>
            <f:selectItem itemLabel="2009"/>
            <f:selectItem itemLabel="2008"/>                
        </h:selectOneMenu>

        <div class="content field ">
            <label for="membro" class="membro">Nome do Membro</label>               
            <h:selectOneMenu id="codMembro" styleClass="inputNome" disabled="true">                                              
                <f:selectItem itemLabel="Selecione um membro" />
            </h:selectOneMenu>
        </div>

</h:panelGrid>
</h:form>

Selecione um orgão
诺姆多门布罗酒店
  • codOrgao
    不会启动它的值更改侦听器,因为它没有
    value
    属性。组件需要有一个
    属性,该属性绑定到支持bean变量

  • 您应该将
    actionListener
    移动到

  • 总之,您的代码应该如下所示:

     <h:selectOneMenu id="codOrgao" value="#{bean.theValue}" styleClass="textoLongo">                                                                                             
         <f:selectItems  value="#{populaOrgaosBean.listaItensOrgaos}" />
         <a4j:support event="onchange" reRender="codMembro" actionListener="#{populaMembros.pegaListaMembros}"/>    
     </h:selectOneMenu>
    

    您是否尝试过用
    onclick
    代替
    onchange
    ?Onchange在菜单失去焦点时激发。