Остановить закрытие страницы AJAX, отображаемой в fancybox? - PullRequest
1 голос
/ 08 декабря 2010

Как я могу остановить закрытие страницы AJAX, отображаемой в fancybox?

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

код fancybox в jquery ...

    $("#feedback").fancybox({

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

sample.php страница будет отображатьсяв фантазии.как только пользователь нажмет кнопку «Отправить» в файле sample.php.fancybox закрывается.мне нужно сделать задержку закрытия после отправки формы обратной связи (sample.php)

1 Ответ

2 голосов
/ 08 декабря 2010

Вы не отправили код, поэтому я могу только догадываться:

Вы можете добавить следующие опции:

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, позвонив $.fancybox.close

Вы можете узнать больше в API документах

Надеюсь, что вам нужно.

ОБНОВЛЕНИЕ:

Чтобы иметь возможность вручную закрыть fancybox после отправки формы, вам необходимо опубликовать форму с помощью ajax и закрыть fancybox в случае успеха или неудачи, используя '$.fancybox.close'

. Вы можете привязать 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 для получения дополнительной информации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...