Xpages: открытие модального окна из модальных диалоговых окон

Я хочу воспроизвести ту же функциональность, что и модальный диалог. Как только модальный диалог открывается, он закрывает (блокирует) родительское окно. Теперь, если у меня есть какая-то кнопка, которая открывает документ в другом модальном окне, она не закрывает родительское модальное окно (исходное окно все еще закрыто).  введите описание изображения здесь


person Arun    schedule 01.07.2015    source источник
comment
Вы должны сообщить нам, какой фреймворк вы используете - похоже, Bootstrap. Если да, то узнайте, как создать модальное окно, из документации: getbootstrap.com/javascript/#modals   -  person Oliver Busse    schedule 01.07.2015
comment
Я использую бутстрап (через тему). И эти модальные окна создаются с помощью xe: dialog.   -  person Arun    schedule 02.07.2015


Ответы (2)


Как указывает Оливер Бусс в комментариях, это официально не поддерживается Bootstrap 3. Из их документации по модальным окнам :

несколько открытых модальных окон не поддерживаются

Если вы все еще намерены достичь этого, любое созданное вами решение будет полагаться на собственный код (а не на тему Bootstrap, которую вы сейчас используете). В качестве доказательства концепции я предлагаю вам прочитать эта статья, в которой, как я полагаю, достигается то, что вы ищете. Основная функциональность, по-видимому, заключается в запуске дополнительных классов CSS для имитации эффекта фона при каждом нажатии последующей модальной кнопки.

Вот источник демонстрации из связанной статьи. Вот фрагмент кода JavaScript, который применяет класс fv-modal-stack к базовым модальным окнам и соответственно увеличивает z-index.

$(document).ready(function () {
    $('#openBtn').click(function () {
        $('#myModal').modal({
            show: true
        })
    });

    $('.modal').on('hidden.bs.modal', function (event) {
        $(this).removeClass('fv-modal-stack');
        $('body').data('fv_open_modals', $('body').data('fv_open_modals') - 1);
    });

    $('.modal').on('shown.bs.modal', function (event) {
        // keep track of the number of open modals
        if (typeof ($('body').data('fv_open_modals')) == 'undefined') {
            $('body').data('fv_open_modals', 0);
        }

        // if the z-index of this modal has been set, ignore.
        if ($(this).hasClass('fv-modal-stack')) {
            return;
        }
        $(this).addClass('fv-modal-stack');
        $('body').data('fv_open_modals', $('body').data('fv_open_modals') + 1);
        $(this).css('z-index', 1040 + (10 * $('body').data('fv_open_modals')));
        $('.modal-backdrop').not('.fv-modal-stack')
            .css('z-index', 1039 + (10 * $('body').data('fv_open_modals')));
        $('.modal-backdrop').not('fv-modal-stack')
            .addClass('fv-modal-stack');
    });
});
person Eric McCormick    schedule 08.07.2015

Вот еще одна статья Джонни Олденбургера. .

Я не знаю, что это правильный. Но покажи это.

person khsopro    schedule 09.07.2015