Modal okno z jiného modalu
- svatekr
- Člen | 7
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 | 1193
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
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');
}
}
});