Galera preciso de uma ajuda, é o seguinte tenho duas paginas xhtml, vou indentificar como *pagina_1.xhtml e *pagina_2.xhtml.
Na pagina_1.xhtml eu tenho um link, segue abaixo como estou fazendo:
<h:panelGrid>
<h:outputLink value="" onclick="">Configurações</h:outputLink>
</h:panelGrid>
Na pagina_2.xhtml tenho meu modal, não vou lançar o codigo porque a questão não é essa.
Como posso fazer com que na hora que eu clicar no link Configurações que está na pagina_1.xhtml, ele abra o modal contido na pagina_2.xhtml ?
Como faço para chamar o modal criado em outro xhtml.
Vc está utilizando algum framework? Primefaces? Icefaces? Richfaces? JQuery? Se não, seria uma boa hora de começar.
O primefaces tem uma função bem maneira de dialog, curte aí: http://www.primefaces.org/showcase/ui/dialog.jsf
Tem outros exemplos de dialog lá.
noite jakefrog
Então esse é um componente, ele funciona quando se cria o modal no mesmo escopo.
Mas como faço chamar modal que está na pagina_2.xhtml por meio do link que está na pagina_1.xhtml ?
Blz, mas qual o nome do componente?
Geralmente costuma ser meuModal.show(); no oncomplete do botão.
jakefrog, estou usando <h:outputLink> que será meu link na pagina_1.xhtml, ao clicar nesse link quero que abra o modal que está contido na pagina_2.xhtml.
Como faço isso, tenho que dar um include pagina_2.xhtml dentro da pagina_1.xhtml, e depois como chamo a pagina_2.xhtml dentro do meu link ?
Após fazer o include vc já tem acesso a todos os itens da pagina. Aí vc pode fazer como nesse exemplo aqui. http://www.primefaces.org/showcase/ui/dialog.jsf
jakefrog vlw pela ajuda…
Exemplo da resolução
pagina_1.xhtml
<body>
<p:dialog widgetVar="dlg3" modal="true" height="400" width="700">
<h:form>
<p:fieldset legend="Toggleable Fieldset" toggleable="true" toggleSpeed="500">
<p:ajax event="toggle" listener="#{fieldsetBean.handleToggle}" update="growl" />
<h:panelGrid columns="2" cellpadding="10">
<p:graphicImage value="/images/godfather/godfather2.jpg" />
<h:outputText value=" "/>
</h:panelGrid>
</p:fieldset>
</h:form>
</body>
pagina_2.xhtml
<h:head>
<h:panelGrid>
<ui:include src="fieldset.xhtml"/> /* Aqui faço o includi da página onde está meu componente */
<h:outputLink value="" onclick="dlg3.show()" >Configurar</h:outputLink> /* No componente <h:outputLink> adiciono no onclick o nome da minha variavel "dlg3" */
</h:panelGrid>
</h:head>
t+