Php 从fancybox iframe获取表单字段值,并将其返回到beforeClose函数
我正在使用jquery fancybox 2加载一个iframe表单。 表单提交数据并将其写入数据库,然后关闭fancybox。 所以这部分很好。 但是,我想从iframe表单中检索一个隐藏字段值。 然后,该值将在父页面上隐藏相应的id。 我尝试使用beforeClose选项获取隐藏字段值。 但是,我无法获取隐藏字段的值 隐藏字段具有页面加载。 fancybox代码:Php 从fancybox iframe获取表单字段值,并将其返回到beforeClose函数,php,jquery,iframe,fancybox,Php,Jquery,Iframe,Fancybox,我正在使用jquery fancybox 2加载一个iframe表单。 表单提交数据并将其写入数据库,然后关闭fancybox。 所以这部分很好。 但是,我想从iframe表单中检索一个隐藏字段值。 然后,该值将在父页面上隐藏相应的id。 我尝试使用beforeClose选项获取隐藏字段值。 但是,我无法获取隐藏字段的值 隐藏字段具有页面加载。 fancybox代码: $(".various").fancybox({ maxWidth : 800, maxHeight
$(".various").fancybox({
maxWidth : 800,
maxHeight : 700,
fitToView : false,
width : '70%',
height : '90%',
autoSize : false,
closeClick : false,
openEffect : 'fade',
beforeClose : function(){
var pageload = $('#pageload').val();
console.log('var = ' + pageload);
},
afterClose : function(){
if(pageload != 0){
$('#'+pageload).slideUp('slow');
} else {
window.location.reload(true);
}
}
});
fancybox由以下各项触发:
<a href="editcategory.php&pageload=<?php echo $sub_id; ?>" class='various' data-fancybox-type='iframe'>LINK</a>
当iframe popsup出现时:
<input type="hidden" value="<?php echo $_GET['pageload']; ?>" id="pageload" name="pageload" />
首先,需要在脚本顶部声明变量pageload
。现在它只在beforeClose
回调函数中有效,所以
<script>
var pageload;
.
.
注意:这是针对fancybox v2.0.6+的,谢谢您的快速回答。。我添加了var pageload;就在我的下面。它没有显示任何结果,因此我对pageload变量进行了FireBug/警报,它给出了未定义的答案。
我使用的是fancybox v2.0.6。。谢谢你的帮助,我需要使用“后秀”功能而不是“前秀”,它工作得很好。也许不是。。。它第一次工作,现在又失败了,没有定义。。。我将继续尝试…确保ID=“pageload”
中的ID在文档中是唯一的,并确保在文档准备就绪后调用.fancybox()
函数…请参见$(document).ready()
// we won't use beforeClose but beforeShow
beforeShow: function(){
// get the value of pageload INSIDE the iframe
pageload = $('.fancybox-iframe').contents().find('#pageload').val();
},
afterClose : function(){
if(pageload != 0){
$('#'+pageload).slideUp('slow');
} else {
window.location.reload(true);
}
}