jqueryUi: с элементом Dialog невозможно работать


mark2011
210

Всем привет! Поясню. Сразу говорю, сайт палить не буду, поэтому на словах подробнее будет.

Короче есть иконка редактирования. По клику на нее вызывается функция Javascript. В ней есть самый обыкновенный ajax-запрос. В запросе передаются данные в PHP методом POST, в PHP формируется HTML-элемент DIV с id=”dialog”, далее вся эта радость приходит обратно в JS.

Далее вызывается функция по успешному завершению запроса:


success: function (result) {

$(‘body’).append(result.element);

$(‘#dialog’).dialog({

‘modal’: true,

‘buttons’: [
{

text: ‘Закрыть’,

click: function() {

$(this).dialog(“close”);

}

}

]

});

}

в result.element приходит как раз див (в php это $result[‘element’]). Далее я его внедряю в body страницы и показываю в виде диалога.

Проблема: всё показывается, но с этим диалогом невозможно работать: кнопка закрытия есть, но она не нажимается, инпут в диве есть, но с ним тоже невозможно работать. Короче такое ощущение, что этот див лежит под каким-то слоем, который не дает с ним ничего делать.

Это НЕ браузер, я проверял в разных браузерах, такое же поведение.


ivan-lev

mark2011:
что этот див лежит под каким-то слоем, который не дает с ним ничего делать.

z-index = ?.

F12 щелчок правой кнопкой.. – Просмотреть код.. на какой элемент укажет.


Sitealert

Очень много слов, а вопрос ни о чём. То есть вопрос о документе HTML, который “палить не буду”, а много слов об аяксе, который нинахрен не сдался.


mark2011

ivan-lev:
z-index = ?.

#dialog {

position: relative;

z-index: 99999 !important;

}

body {

width: 100%;

height: 100%;

overflow-x: hidden;

overflow-y: scroll;

font-family: ‘Montserrat’, sans-serif;

box-sizing: border-box;

position: relative;

z-index: 5 !important;

}

Диалог всяко должен быть сверху.

———- Добавлено 16.04.2020 в 10:51 ———-

ivan-lev:
F12 щелчок правой кнопкой.. – Просмотреть код.. на какой элемент укажет.

Вы были правы, спасибо большое! Действительно, был включен уже теперь ненужный файл, поэтому он всё перекрывал. Как только его убрал – всё заработало.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *