Bootstrap Modal si riporta solo una volta
-
23-12-2019 - |
Domanda
Sto usando l'estensione di bootstrap modal e bootstrap-modal con un modulo all'interno per eseguire una funzione su una pagina web, e voglio reimpostare questo modulo ogni volta chi chiudo il Modal, questo è il codice che sto usando:
.<button class="btn <?php if (isset($_SESSION['useremail']) && $_SESSION['useremail'] == ""){ echo 'btn-default btn-sm btn-block';}else{ echo 'btn-primary btn-sm btn-block';}?>" data-toggle="modal" data-target="#chgpwemail_modal" id="mailmanager" <?php if (isset($_SESSION['useremail']) && $_SESSION['useremail'] == "") echo 'disabled="disabled"';?>><i class="fa fa-envelope fa-fw" ></i>Alterar Senha Email</button>
.
Dopo che il Modal è licenziato e dentro ho un pulsante di licenza con questo codice:
$('#dismiss-chgpwemail').click(function(event) {
$('#chgpwemail_modal').modal('hide');
});
$.clearInput = function () {
$('form').find('input[type=text], input[type=password], input[type=number],input[type=email], textarea').val('');
};
$('#chgpwemail_modal').on('hide.bs.modal', function(e) {
$.clearInput();
});
.
Quindi il mio problema sta seguendo la funzione ClearInput () funziona solo una volta, dopo che è stato utilizzato una volta non funziona più.
E non riesco a capire perché, dal momento che dopo una pagina completa ricaricalo funziona di nuovo!
Soluzione
Se capisco cosa stai cercando di fare, puoi provare questo.Ogni volta che un modal è chiuso, cercherai di trovare ogni forma di ingressi e aree di testo e ripristinarli.
$('#modal').on('hidden.bs.modal', function() {
$('form').find('input').val('');
$('form').find('textarea').html('');
});
.
Prova a riformattare meglio il codice.Ho appena notato che quello che ho digitato lo stesso che hai;)
Se si desidera registrare questo o ogni modale nel tuo HTML puoi farlo: anziché
$('#modal').on('hidden.bs.modal', function() {
.
Digita questo
$('body').on('hidden.bs.modal', '.modal', function () {.....});
.
Con questo ti registrerai l'evento per ogni modale che hai.Non dimenticare che ".modal" è il riferimento per i tuoi modali.Sostituiscilo con il tuo.