Cualquiera puede cerrar la ventana emergente generada por jQuery plugin de bPopup, a partir de un marco flotante niño?

StackOverflow https://stackoverflow.com/questions/4247710

Pregunta

Bueno, la historia es un poco largo, pero espero que pueda paciente conmigo por lo que podría haber algunos antecedentes del problema:

Estoy desarrollando la sección de registro de un portal utilizando ASP.NET y para hacer las cosas bien, Decidí usar bPopup de aquí para cargar la página de registro en el iframe de la página (página principal) llamando . Ahora necesito una manera de cerrar el iframe después de un registro exitoso por lo que desde el código subyacente de la página de registro (anidado en el iframe) Probé una función Javascript de los padres que me permite hacerlo, aquí está la función de cerrar el iframe generada por el plugin:

 function bPopup_close() {
         $(".bClose").closePopup();
     return false;
 }

Y aquí está el código detrás del marco flotante (la función se llama en enviar):

    ClientScript.RegisterOnSubmitStatement
        (GetType(), "Javascript", "javascript: window.opener.bPopup_close();");

No fue capaz de cerrar la ventana emergente. Curiosamente, Firebug me mostró que después he hecho clic en el botón Enviar, window.opener era nula. ¿Eso quiere decir que el padre fue de hecho cerrado? De todos modos el emergente todavía estaba allí ...

Espero que les podría compartir algunas ideas sobre algo similar?

¿Fue útil?

Solución

Puedo ver que dinbror ya que respondió en su página :)

  

@fred: Me alegro de que se le parezca. Estas usando   la nueva versión de bPopup?

     

Solución: Crear una función en el   la página que se abre la ventana emergente:

     

closeBPopup function () {   $ (Selector) .bPopup (). Close ()}

     

A continuación, puede desencadenar dentro de su   iframe cuando se termine de hacer   su materia con:

     

parent.closeBPopup ();

Otros consejos

Después de medio día, por fin tengo trabajo con:

  

ClientScript.RegisterStartupScript              (GetType () "bla", "", false);

y la bclose código () es:

    function bclose() {
        parent.$("#popup").bPopup().close();
        return false;
    }
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top