Открытие диалогового окна Jquery в главном окне из iframe - PullRequest
3 голосов
/ 05 июля 2010

Я пробовал это весь день ...

У меня есть форма в iframe, и она содержит jquery validate для проверки формы. Я просто хочу, чтобы при неправильных данных на главной странице появлялось диалоговое окно jquery, которое отображается в top.document.

это мой код в iframe:

$("#dialog-message", top.document).dialog({                                                                      
             modal: true,
             autoOpen: false,
             buttons: { Ok: function() {
                 $(this).dialog('close');
               }
             }
          });

и это фрагмент кода, который должен активировать диалоговое окно:

$("#search-form").validate({ 

        rules: { datapicker: {required: true,dateDE: true}},
        debug: true,
        messages: {
         datapicker: {
            required: "És necessari introduïr una data",  
            date: "S'ha d'afegir una data correcte: dd/mm/aaaa"
         }
        },
        errorPlacement: function(error, element) {
                error.prependTo($('#dialog-message', top.document));
        },
        errorLabelContainer: $("#dialog-message ul", top.document),
        showErrors: function () {
            $('#dialog-message',top.document).dialog('open');
            this.defaultShowErrors();
        }
});

так что ... это не сработает и ... если я попробую эту инструкцию, все будет отлично работать

$("#dialog-message", top.document).css(...) //works fine!

Я думаю, что, возможно, есть какая-то проблема с селектором $ -top.document и функцией диалога ... Или, возможно, невозможно использовать dialog () для элементов div в разных кадрах ...

помогите пожалуйста! : D

заранее спасибо

1 Ответ

2 голосов
/ 27 марта 2011

Сделайте так, чтобы код в iframe ссылался на родителя, и вызовите функцию JavaScript родителя, примерно так:

...