Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Rui Lorensi

[Resolvido] commandLink com f:ajax nao renderiza com ponente

Recommended Posts

Bom dia, estou com dificuldade em fazer meu commandlink renderizar um dataTable, pesquisando algumas coisas encontrei algumas ideias como usar primefaces ou colocar meu dataTable dentro de um h:panelGroup, porem nao funcionou.

 

<div>
<f:ajax event="change" listener="#{projectBean.addValuesOctopusToList()}" render="tableV">
                       <h:selectOneMenu id="vos" value="#{projectBean.valuesOctopusId}" >
                           <f:selectItem itemValue="" itemLabel="Select" />
                           <f:selectItems value="#{projectBean.listValueOctopus()}"
                                          var="o"
                                          itemValue="#{o.value}"
                                          itemLabel="#{o.label}">
                           </f:selectItems>
                       </h:selectOneMenu>
                   </f:ajax>
               </div>

               <div>
                   <h:dataTable id="tableV" value="#{projectBean.showValuesAdd()}" var="value" >
                       <f:facet name="header" >Values </f:facet>                    
                       <h:column>
                           <fieldset><legend>#{value.idOctopus.varOctopus}</legend>
                               #{value.alternative}

                               <f:ajax event="action" render="tableV" >    
                                   <h:commandLink action="#{projectBean.removeValuesOctopusToList(value.idValuesOctopus)}" value="X">
                                   </h:commandLink>
                               </f:ajax>
                           </fieldset>
                       </h:column>
                   </h:dataTable>
               </div>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia, estou com dificuldade em fazer meu commandlink renderizar um dataTable, pesquisando algumas coisas encontrei algumas ideias como usar primefaces ou colocar meu dataTable dentro de um h:panelGroup, porem nao funcionou.

 

<div>
<f:ajax event="change" listener="#{projectBean.addValuesOctopusToList()}" render="tableV">
                       <h:selectOneMenu id="vos" value="#{projectBean.valuesOctopusId}" >
                           <f:selectItem itemValue="" itemLabel="Select" />
                           <f:selectItems value="#{projectBean.listValueOctopus()}"
                                          var="o"
                                          itemValue="#{o.value}"
                                          itemLabel="#{o.label}">
                           </f:selectItems>
                       </h:selectOneMenu>
                   </f:ajax>
               </div>

               <div>
                   <h:dataTable id="tableV" value="#{projectBean.showValuesAdd()}" var="value" >
                       <f:facet name="header" >Values </f:facet>                    
                       <h:column>
                           <fieldset><legend>#{value.idOctopus.varOctopus}</legend>
                               #{value.alternative}

                               <f:ajax event="action" render="tableV" >    
                                   <h:commandLink action="#{projectBean.removeValuesOctopusToList(value.idValuesOctopus)}" value="X">
                                   </h:commandLink>
                               </f:ajax>
                           </fieldset>
                       </h:column>
                   </h:dataTable>
               </div>

 

 

Resolvido!

bastou por um h:panelGroup em torno do h:dataTable e repare no <f:ajax render=":val:panel" />, ou seja,<f:ajax render=":formId:Elemento" />. as vezes o ajax nao renderiza pq nao encontra o componente entao tem que forçar o local certo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.