停止关闭fancybox中显示的AJAX页面?

时间:2010-12-08 14:06:46

标签: jquery ajax fancybox

如何停止关闭fancybox中显示的AJAX页面?

<a href="sample.php?name=name1&feedback=feedback1" id="feedback">feedback</a>

jquery中的fancybox代码......

    $("#feedback").fancybox({

        'speedIn'   :   600,
        'speedOut'  :   200,
        'centerOnScroll':   false,
        'autoDimensions':   true
        'type'          : 'ajax',
        });

sample.php页面将显示在fancybox中。一旦用户点击sample.php中的提交按钮。 fancybox关闭。我需要在提交反馈表后提交延迟(sample.php)

1 个答案:

答案 0 :(得分:2)

您没有发布代码所以我只能猜测:

您可以添加以下选项:

showCloseButton: false // this will hide the close button
hideOnContentClick: false // this will not close fancybox when clicked inside
hideOnOverlayClick: false // this will not closefancyvox when clicked outside

您也可以致电$.fancybox.close

手动关闭fancybox

您可以在API docs

中查看更多内容

希望你需要它。

更新:

为了能够在表单提交后手动关闭fancybox,您需要通过ajax发布表单并使用“$.fancybox.close”成功或失败关闭fancybox

您可以将ajax绑定到您的表单,如下所示:

$('#yourForm').bind('submit', function() {
  $.ajax({
  url: 'yourpage.php',
  success: function(data) {
    if (data == 'Error') { alert('An error occurred')}
    else { $.fancybox.close }
  }
});

});

检查jQuery docs以了解有关ajax()函数的更多信息,并在官方fancybox support group中进行一些搜索以获取更多信息。