如何从子窗口关闭fancybox?

Moh*_*Ram 5 ajax jquery fancybox

父链接:

<a href="feedback.php" id="feed">Provide your feedback here</a>
Run Code Online (Sandbox Code Playgroud)

用于启动fancybox的jQuery代码是......

$("#feed").fancybox();
Run Code Online (Sandbox Code Playgroud)

feedback.php中的代码...

      <html>
        <head>
<script language="javascript">    
$(document).ready(function(){
    $("#feed_submit").click(function(){
    //Name is alerted
    alert($("#name").val());

    //code to close fancy box(Not working)
    $.fancybox.close();

    });
    });
</script>
        </head>
        <body>
        <form method="post" name="feedback" id="feedback" action="">
                <div>
                    <label>name</label>
                    <input type="text" name="name" id="name"/>
                </div>
                <div>
                    <label>feedback</label>
                    <input type="text" name="content" id="content"/>
                </div>
        <div><input type="button" name="feed_submit" id="submit" value="submit"></div>
    </form>    
    </body>
    </html>
Run Code Online (Sandbox Code Playgroud)

单击提交按钮后,我需要使用jquery关闭此页面中的花式框

我试过用

$.fancybox.close();
parent.$.fancybox.close();
Run Code Online (Sandbox Code Playgroud)

但这对我不起作用.如果有任何关闭此ajax表格的选项,请告诉我.

Dav*_*und 10

以下代码应该可以工作,并且已经为许多人工作

parent.$.fn.fancybox.close();
Run Code Online (Sandbox Code Playgroud)

但是,我也看到,例如在这个问题中,jQuery在noConflict模式下运行,用户不知道.如果是这种情况,则必须将脚本修改为

parent.jQuery.fn.fancybox.close();
Run Code Online (Sandbox Code Playgroud)

如果这些都不起作用,请使用Firebug for Firefox或Chrome开发人员控制台等工具查看是否有错误消息,并向我们报告它是什么.


Ali*_*aru 7

尝试

window.parent.$.fancybox.close();
Run Code Online (Sandbox Code Playgroud)

假设 $.fancybox.close();在父窗口中工作.