example ekko data code bootstrap javascript jsf primefaces seam

javascript - ekko - lightbox iframe



Cerrar una fuente de luz lightbox desde el botón iframe (1)

Yo uso el componente lightbox de las primefaces con la costura. Tengo una página firstpage.xhtml, donde tengo un botón que muestra un lightbox con el parámetro iframe, que mostrará un segundo page.xhtml que tiene algunos campos de formulario y un botón "Cerrar ventana".

Código de firstpage.xhtml

> <ui:composition 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.prime.com.tr/ui" > xmlns:opt="http://primefaces.prime.com.tr/optimus" > template="layout/template1.xhtml"> <ui:define name="head"> > <p:resources/> </ui:define> > <ui:define name="body"> > > <h1 class="title">LightBox - External URL</h1> <div class="entry"> > <p>LightBox can display external urls in an iframe.</p> > > <p:lightBox id="light" iframe="true" width="80%" height="80%" widgetVar="dlg"> > > <h:outputLink value="#{request.contextPath}/PermissionEdit.seam" title="PrimeFaces > HomePage"> > <h:outputText value="PrimeFaces HomePage"/> > </h:outputLink> > </p:lightBox> > > <h3>Source</h3> <pre name="code" class="xml"> &lt;p:lightBox iframe="true" width="80%" height="80%"&gt; &lt;h:outputLink > value="http://primefaces.org" title="PrimeFaces HomePage"&gt; > &lt;h:outputText value="PrimeFaces HomePage"/&gt; > &lt;/h:outputLink&gt; &lt;/p:lightBox&gt; </pre> > > </div> </ui:define> </ui:composition>

¿Podría alguien decirme cómo implementar un método cercano para cerrar esta ventana iframe lightbox cuando hago clic en el botón Cerrar en el segundo sitio.xhtml?

Gracias por adelantado


Recargar una página puede ser muy costoso:

onclick="javascript:window.parent.location.reload(true);"

Puedes usar un enfoque ligeramente diferente:

<p:lightBox id="light" iframe="true" width="80%" height="80%" widgetVar="dlg">

en el lado iframe:

<p:commandButton value="Close" onsuccess="parent.dlg.hide();" ajax="true" process="@none" />