我遇到了一个奇怪的问题。我在我的项目中使用fancybox,在点击fancybox的链接后,我正在关闭它并尝试重新加载父窗口。我正在使用此代码。
<script>
parent.$.fancybox.close();
parent.parent.window.location.href = '<?php echo base_url();?>home/job_posting/<?php echo $id ;?>';
</script>
它在本地工作但是当试图在实时服务器中运行它时,它无法正常工作。我正在使用codeigniter框架并在我的控制器方法中执行此操作。
请帮忙。
答案 0 :(得分:0)
好吧,如果您只是在关闭fancybox后尝试重新加载父窗口,那么只需从打开的页面中关闭fancybox(就像你这样做),如
<script>
parent.$.fancybox.close();
</script>
...并从自身重新加载父页面,将afterClose
回调添加到您的fancybox自定义脚本
$(".fancybox").fancybox({
// other API options here
afterClose : function() {
location.reload();
return;
}
});
另一方面,如果您不只是尝试重新加载父页面,而是实际尝试重定向到另一个页面,那么如果您使用的是相对路径,请使用window.location.pathname
或window.location.href
获取完整路径。
您可能还想尝试self.location.href
。
注意:afterClose
适用于fancybox v2.x,对于fancybox v1.3.4,请改用onClosed
。