Закройте основные элементы лайтбокса из кнопки iframe - PullRequest
0 голосов
/ 24 октября 2011

Я использую простой компонент lightbox с швом. У меня есть страница firstpage.xhtml, где у меня есть кнопка, которая отображает лайтбокс с параметром iframe, который отображает secondpage.xhtml с некоторыми полями формы и кнопкой «Закрыть окно».

Код firstpage.xhtml

<code>>  <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; 
> > </ ui: определить> </ ui: состав>

Может ли кто-нибудь сказать мне, как реализовать метод close, чтобы закрыть это окно iframe лайтбокса, когда я нажимаю кнопку закрытия на secondpage.xhtml?

Заранее спасибо

1 Ответ

3 голосов
/ 01 февраля 2013

Перезагрузка страницы может быть очень дорогой:

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

Вы можете использовать немного другой подход:

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

на стороне iframe:

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