93 votes

comment détruire complètement la fenêtre modale de bootstrap ?

J'ai fait usage de fenêtre modale pour une mise en œuvre de l'assistant qui comporte environ 4,5 étapes. J'ai besoin de le détruire complètement après l'étape dernière étape (surFinish) et Étape OnCancel sans rafraîchissement de la page . Je peux bien sûr la masquer, mais le fait de cacher la fenêtre modale rétablit tout tel quel lorsque je l'ouvre à nouveau. Quelqu'un peut-il m'aider à résoudre ce problème ?

Merci Toutes les réponses aux questions sont utiles pour moi.

2voto

Robert Points 1606

D'après ce que j'ai compris, vous ne voulez pas l'enlever, ni le cacher ? Parce que vous pourriez vouloir le réutiliser plus tard, mais vous ne voulez pas qu'il ait l'ancien contenu si jamais vous l'ouvrez à nouveau ?

<div class="modal hide fade">
    <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times</button>
        <h3>Modal header</h3>
    </div>
    <div class="modal-body">
        <p>One fine body…</p>
    </div>
    <div class="modal-footer">
        <a href="#" class="btn">Close</a>
        <a href="#" class="btn btn-primary">Save changes</a>
    </div>
</div>

Si vous voulez l'utiliser comme modèle dynamique, il suffit de faire quelque chose comme

$(selector).modal({show: true})

....

$(selector).modal({show: false})
$(".modal-body").empty()

....

$(".modal-body").append("new stuff & text")
$(selector).modal({show: true})

2voto

Luca Di Lenardo Points 11
$('#myModal').on('hidden.bs.modal', function () {
      $(this).data('bs.modal', null).remove();
});

//Just add .remove(); 
//Bootstrap v3.0.3

2voto

Daniel Ortegón Points 319

Voici ma solution :

this.$el.modal().off();

2voto

Alin Razvan Points 51

Cela supprime complètement la modale du DOM, et cela fonctionne également pour les modales "ajoutées".

pickoptionmodal est l'id de ma fenêtre modale.

===============================================

$(document).on('hidden.bs.modal','#pickoptionmodal',function(e){

e.preventDefault();

$("#pickoptionmodal").remove();

});

1voto

Vikalp Veer Points 317

J'ai eu le même scénario où j'ouvrais une nouvelle modale en cliquant sur un bouton. Une fois que c'est fait, je veux la supprimer complètement de ma page... J'utilise remove pour supprimer la modale... Au clic sur le bouton, je vérifie si la modale existe, et si c'est le cas, je la détruis et crée une nouvelle modale...

$("#wizard").click(function() {
    /* find if wizard is already open */
    if($('.wizard-modal').length) {
        $('.wizard-modal').remove();
    }
});

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X