2012-09-13 20 views
5

Estoy usando fancxbox, es posible pasar una variable de fancybox child a parent.Fancybox tipo iframe valor devuelto al cerrar

En la página secundaria hay campo de texto llamado banner_width1 (<input name="banner_width" id="banner_width1" type="text" size="5" value="1000"/>)

'onClosed':function() 
{ 
alert($("#banner_width1").val()); 
var x = $("#fancybox-frame").contentWindow.targetFunction(); 
alert(x.val()); 
} 

Respuesta

6

Si está utilizando v1.3.4 FancyBox entonces no va a ser capaz de obtener el valor (.val()) mediante la devolución de llamada onClosed porque onClosed se ejecutará cuando todo el contenido de fancybox ya haya sido eliminado. Usted prefiere utilizar onCleanup lugar (todavía se puede alertar al valor de x después de cerrar FancyBox sin embargo)

así que para FancyBox v1.3.4 uso esta opción API

"onCleanup": function(){ 
x = $('#fancybox-frame').contents().find('#banner_width1').val(); 
}, 
"onClosed": function(){ 
alert("the value of input#banner_width1 is : "+x); // optional 
} 

asegurarse de que se ha declarado en var x; parte superior de la secuencia de comandos para que sea accesible desde cualquier devolución de llamada o cualquier otra función.

para FancyBox v2.xy uso esta opción API

beforeShow : function(){ 
x = $('.fancybox-iframe').contents().find('#banner_width1').val(); 
}, 
afterClose: function(){ 
alert("the value of input#banner_width1 is : "+x); // optional 
} 
Cuestiones relacionadas