Fancybox не работает после успешного вызова ajax

Почему не работает fancybox после проверки правильности в C#?

Fancybox это вызов после use PageMethods.ValidacionIsAdmin(onSuccessValidacionIsAdmin); если это действительно, возврат базы данных, выполненной в:

[WebMethod]
public static DeleteAccountResult ValidacionIsAdmin()
{
   DeleteAccountResult res = new DeleteAccountResult();

   ... // Query to database with ok results

   res.ok = true;

   return res;
}

Вызов ajax в клиенте для проверки:

jQuery(".delete a").click(function () {

            function onSuccessValidacionIsAdmin(data) {
                if (data.ok == true) {
                    jQuery("#<%= divError.ClientID %>").hide();

                    jQuery(".delete a").fancybox({
                        content: jQuery('#eliminar-cuenta').html(),
                        modal: false,
                        showCloseButton: false,
                        onComplete: function () {
                            jQuery("input[type=checkbox]").uniform()

                            jQuery('#privacidad').fancybox({
                                enableEscapeButton: false,
                                hideOnOverlayClick: false,
                                showCloseButton: true,
                                onComplete: function () {
                                    jQuery('#fancybox-close').off().on('click', function (e) {
                                        e.preventDefault();
                                        jQuery(".delete a").click();
                                    });
                                }
                            });
                        }
                    });
                }
                else {
                    jQuery("#<%= divError.ClientID %>").show();
                    jQuery("#lblError")[0].innerHTML = data.strError;
                }
            }

            PageMethods.ValidacionIsAdmin(onSuccessValidacionIsAdmin);
        });

Поведение похоже на то, что после нажатия на ссылку, открывающую fancybox, не открывают его, похоже, что оно "обновляет" сеть, и я нажимаю на ту же ссылку, и тогда она работает...

Я считал, что фантазия не работает после вызова ajax (в моем случае проверка C#)

Мой вопрос: почему это происходит?

1 ответ

Решение

После нескольких часов расследования я получил решение. Любопытно, что во всех свойствах, например, писать контент: ... Я заменил как: "контент": ...

Я добавил свойство 'type':'html'

После того, как сделать это, fancybox работал.

 jQuery(".delete a").fancybox({
    'content': jQuery('#eliminar-cuenta').html(),
     'type': 'html',
    'modal': false,
    'showCloseButton': false,
    'onComplete': function () {
        jQuery("input[type=checkbox]").uniform()

        jQuery('#privacidad').fancybox({
            enableEscapeButton: false,
            hideOnOverlayClick: false,
            showCloseButton: true,
            onComplete: function () {
                jQuery('#fancybox-close').off().on('click', function (e) {
                    e.preventDefault();
                    jQuery(".delete a").click();
                });
            }
        });
    }
});
Другие вопросы по тегам