Duvida - manter estado de um accordionPanel após o click

Java

27/02/2012

Bom dia, estou com uma duvida
Como que eu mantenho o estado de um accordionPanel após o click em um deles

esse código está dentro de um layout do primefaces


<!DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd>
<html xmlns=http://www.w3.org/1999/xhtml 
      xmlns:ui=http://java.sun.com/jsf/facelets 
      xmlns:h=http://java.sun.com/jsf/html 
      xmlns:f=http://java.sun.com/jsf/core
      xmlns:p=http://primefaces.org/ui>
<h:form>
<p:accordionPanel style=width:190px;>
<p:tab title=Produto id=tab0 >
 <p:menu id=menu>
  <p:submenu label=Opções>
   <p:menuitem value=Novo Produto icon=ui-icon-plusthick action=/admin/produto/cadastro-produto.xhtml?faces-redirect=true ajax=false immediate=true/>
    <p:menuitem value=Consultar Produto icon=ui-icon-search action=/admin/produto/listar-produto.xhtml?faces-redirect=true ajax=false immediate=true/>
     </p:submenu>
      </p:menu>
       </p:tab>

        <p:tab title=Vendedor id=tab1>
         <p:menu id=menu2>  
          <p:submenu label=Opções>  
           <p:menuitem value=Novo Vendedor icon=ui-icon-plusthick action=/interno/vendedor/cadastro-vendedor.xhtml?faces-redirect=true ajax=false immediate=true/>  
            <p:menuitem value=Consultar Vendedor  icon=ui-icon-search action=/interno/vendedor/listar-vendedores.xhtml?faces-redirect=true ajax=false immediate=true/>  
             </p:submenu>  
              </p:menu>  
               </p:tab>      
                
                   
</p:accordionPanel>

</h:form>
</html>



JSF 2.0 , primefaces 3.1.1
Thiago Volpato

Thiago Volpato

Curtidas 0

Respostas

Robson Teixeira

Robson Teixeira

27/02/2012

Olá amigo poderia postar seu codigo sem o recurso de formatação ok???
att
robson
GOSTEI 0
Thiago Volpato

Thiago Volpato

27/02/2012

<!DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd>
<html xmlns=http://www.w3.org/1999/xhtml
xmlns:ui=http://java.sun.com/jsf/facelets
xmlns:h=http://java.sun.com/jsf/html
xmlns:f=http://java.sun.com/jsf/core
xmlns:p=http://primefaces.org/ui>

<h:form>
<p:accordionPanel style=width:190px; activeIndex=-1 >
<p:tab title=Produto id=tab0 >
<p:menu id=menu>
<p:submenu label=Opções>
<p:menuitem value=Novo Produto icon=ui-icon-plusthick action=/admin/produto/cadastro-produto.xhtml?faces-redirect=true ajax=false immediate=true/>
<p:menuitem value=Consultar Produto icon=ui-icon-search action=/admin/produto/listar-produto.xhtml?faces-redirect=true ajax=false immediate=true/>
</p:submenu>
</p:menu>
</p:tab>

<p:tab title=Vendedor id=tab1>
<p:menu id=menu2>
<p:submenu label=Opções>
<p:menuitem value=Novo Vendedor icon=ui-icon-plusthick action=/interno/vendedor/cadastro-vendedor.xhtml?faces-redirect=true ajax=false immediate=true/>
<p:menuitem value=Consultar Vendedor icon=ui-icon-search action=/interno/vendedor/listar-vendedores.xhtml?faces-redirect=true ajax=false immediate=true/>
</p:submenu>
</p:menu>
</p:tab>

<p:tab title=Pedido id=tab2>
<p:menu id=menu3>
<p:submenu label=Opções>
<p:menuitem value=Novo Pedido icon=ui-icon-plusthick action=/interno/pedido/cadastro-pedido.xhtml?faces-redirect=true ajax=false immediate=true/>
<p:menuitem value=Consultar Pedido icon=ui-icon-search action=/interno/pedido/listar-pedidos.xhtml?faces-redirect=true ajax=false immediate=true/>
</p:submenu>
</p:menu>
</p:tab>


</p:accordionPanel>

</h:form>
</html>

GOSTEI 0
Robson Teixeira

Robson Teixeira

27/02/2012

Thiago veja esse exemplo aki do showCase do primefaces
http://www.primefaces.org/showcase/ui/accordionPanelMultiple.jsf

espero ter ajudado.
att
robson
GOSTEI 0
Davi Costa

Davi Costa

27/02/2012

Pelo showcase do primefaces não é exposto essa opção, talvez nesse componente não seja capaz essa funcionalidade, o primefaces é feito em jquery, talvez se vc criar esse componente via jquery seja a solução...

att Davi
GOSTEI 0
Robson Teixeira

Robson Teixeira

27/02/2012

só para garantir que eu tenha entendido você deseja que o 1º arccodion mantenha um aberto enquanto você abre o 2º arccodion e que os 2 ou mais se mantenham abertos até clica em cima do arccodion aberto e que o mesmo feche ok???
se for é só ir no <p:accordionPanel e seta a propriedade multiple com true.
assim
<p:accordionPanel multiple=true

espero ter ajudado
att
robson
GOSTEI 0
Thiago Volpato

Thiago Volpato

27/02/2012

qdo eu estiver no 1° accordion qro outros fechados e vice-versa

e qro tambem que qdo eu abrir um accordion e ecessa um link que tem dentro dele
ele se mantenha aberto ate que eu queira sair dele

Eu nao sei se tem como fazer isso sem utilizar Jquery,
eu ja fiz isso mas nao era componente do primefaces

fico no aguardo.
GOSTEI 0
Thiago Volpato

Thiago Volpato

27/02/2012

qdo eu estiver no 1° accordion qro outros fechados e vice-versa

e qro tambem que qdo eu abrir um accordion e ecessa um link que tem dentro dele
ele se mantenha aberto ate que eu queira sair dele

Eu nao sei se tem como fazer isso sem utilizar Jquery,
eu ja fiz isso mas nao era componente do primefaces

fico no aguardo.
GOSTEI 0
Thiago Volpato

Thiago Volpato

27/02/2012

qdo eu estiver no 1° accordion qro outros fechados e vice-versa

e qro tambem que qdo eu abrir um accordion e ecessa um link que tem dentro dele
ele se mantenha aberto ate que eu queira sair dele

Eu nao sei se tem como fazer isso sem utilizar Jquery,
eu ja fiz isso mas nao era componente do primefaces

fico no aguardo.
GOSTEI 0
Dyego Carmo

Dyego Carmo

27/02/2012

Qual a versao q vc esta usando ?
GOSTEI 0
Thiago Volpato

Thiago Volpato

27/02/2012

versao primefaces 3.1
GOSTEI 0
Thiago Volpato

Thiago Volpato

27/02/2012

qdo eu estiver no 1° accordion qro outros fechados e vice-versa

e qro tambem que qdo eu abrir um accordion e ecessa um link que tem dentro dele
ele se mantenha aberto ate que eu queira sair dele

eu nao sei se tem como fazer isso sem utilizar jquery,
eu ja fiz isso mas nao era componente do primefaces

fico no aguardo.
GOSTEI 0
Thiago Volpato

Thiago Volpato

27/02/2012

Problema resolvido!!

Criei um controlador index no MB, para identificar em qual aba estou
e tbm criei um event onde ele pega o id da tab assim eu posso clicar em qlqr link
sem que ela feche.




Vlw
GOSTEI 0
POSTAR