Jquery Dialog - дополнительное диалоговое окно - PullRequest
0 голосов
/ 22 сентября 2009

У меня открывается диалоговое окно после отправки формы с помощью плагина ajaxForm. AjaxForm обновляет содержимое диалога.

Проблема в том, что открывается дополнительный диалог. Вот код JavaScript:

function formSubmit(target, form, success){
    var formoptions = { 
        target: target,
        success: success
    }; 
$(form).ajaxForm(formoptions);
}

function createDialog(element){
    $(element).dialog({
            modal: true,
            autoOpen: false,
            buttons: {
                Ok: function() {
                    $(this).dialog('close');
                }
            }
        });
}

в моей функции загрузки:

createDialog(".formresponse");
$(".contact_submit").click(function(){
    formSubmit('.formresponse', '.submitform', function(){
        $('.formresponse').dialog('open');
    });
});

Ответы [ 2 ]

0 голосов
/ 23 сентября 2009

На самом деле, кто-то из группы Google JQuery-Ui указал мне правильное направление. На моей странице было два div с одинаковым именем класса .formresponse.

Я переместил его из цикла php while, чтобы он был только на странице один раз, и теперь он работает.

Глупый я.

О, и это было только один раз, я проверил это в Firebug.

Jquery отлично справляется с выдачей возврата false на кнопки.

0 голосов
/ 22 сентября 2009

.contact_submit является <<code>input type="submit">? Я думаю, что, возможно, при нажатии он отправляет дважды, один раз обычным способом и один раз через ajax. Попробуйте вместо этого использовать <input type="button"> и посмотрите, есть ли еще 2 диалоговых окна.

...