моя модальная коробка jquery решила не быть модальной - PullRequest
1 голос
/ 29 ноября 2011

У меня нет модальных файлов jQuery CSS, добавленных на мой сайт, но предполагается, что, если модальное значение установлено как true, все равно будет отключена остальная часть моей страницы.Кажется, этого не происходит.Есть ли что-то, что делает мой код, что отключило бы способность формы быть модальной?

$("#foo").click(function(){
    $("#bar").dialog({
        width: 400,
        modal: true,
        resizable: false,
        buttons: {
            "Save": function(){
                $.post('remote_foo.php', $('#bar').serialize(), function(data){
                    $('#tracediv').html(data);
                })
                $(this).dialog("close");
            },
            "cancel": function(){
                $(this).dialog("close");
            }
        }//end of buttons
    }).('open');//end of jquery dialog
})// end of click function

Ответы [ 2 ]

4 голосов
/ 29 ноября 2011

jQuery UI Dialog не «отключает» остальную часть вашей страницы.Он работает, помещая div в верхней части страницы, поэтому, если я пытаюсь нажать на что-либо, я нажимаю на этот наложенный div, а не на элементы под ним.Это дает им иллюзию того, что они отключены, хотя на самом деле это не так.

Поскольку у вас нет CSS, включенного на страницу, скорее всего, div-формат не правильно отформатирован и не блокирует доступ к вашим базовым элементам.

1 голос
/ 29 ноября 2011

Вам действительно нужно включить CSS, потому что вместо «отключения остальной части страницы» он просто добавляет div в DOM с классом ui-widget-overlay, который устанавливает position: absolute.

Позиционирование в сочетании с z-index делает невозможным щелчок по остальной части страницы.

...