Modal okno z jiného modalu

svatekr
Člen | 7
+
0
-

Díky za článek Jednoduchá implementace Bootstrap Modalu do Nette – udělal jsem díky němu modal s obsahem, který si tahám z databáze.

Teď bych rád z tohoto modalu klikl na odkaz, který chci otevřít v druhém modalu a v něm opět vyplnit obsah něčím z databáze. Vede k tomu taky nějaká snadná cesta? Už nad tím sedím 2 dny a zatím neuspokojivě po kliknutí vyměním obsah toho prvního modalu za druhý.

Díky za nasměrování

Pavel Kravčík
Člen | 1111
+
0
-

Viz https://getbootstrap.com/…nents/modal/#…

V závislosti na ajaxu, který používáš můžeš například volat .then() a pak něco podobného:

const myModal = new bootstrap.Modal('#moveModal',{});
myModal.show();
svatekr
Člen | 7
+
+1
-

Díky za brainstorming :-). Nakonec jsem to udělal tak, že jsem si zaregistroval druhé rozšíření v tom main.js z původního článku:

$.nette.ext('task-modal', {

    init: function() {
        // if the modal has some content, show it when page is loaded
        var $taskModal = $('#taskModal');
        if ($taskModal.find('.modal-content').html().trim().length !== 0) {
            $taskModal.modal('show');
        }
    },
    success: function (jqXHR, status, settings) {

        if (typeof settings.responseJSON.snippets != 'undefined') {
            var $snippet = settings.responseJSON.snippets['snippet--taskModal'];
        }
        if (!$snippet) {
            return;
        }

        var $taskModal = $('#taskModal');
        if ($taskModal.find('.modal-content').html().trim().length !== 0) {
            $taskModal.modal('show');
        } else {
            $taskModal.modal('hide');
        }
    }
});