1
votes

le formulaire bootstrap-4 supprime les validations après l'envoi

Je ne peux pas supprimer les validations après l'envoi, il affiche également les validations après un message réussi.

J'ai essayé de soumettre après une soumission réussie tous les champs de saisie et supprimés, mais les validations restent les mêmes, il affiche des icônes de validation pour chaque champ de saisie.

$('#formid').on('submit', function(e) {

  // if the validator does not prevent form submit
  if (!e.isDefaultPrevented()) {
    var url = "process.php";

    // POST values in the background the the script URL
    $.ajax({
      type: "POST",
      url: url,
      data: $(this).serialize(),
      success: function(data) {
        var messageAlert = 'alert-' + data.type;
        var messageText = data.message;
        // let's compose Bootstrap alert box HTML
        var alertBox = '<div class="alert ' + messageAlert + 'alert-dismissable"><button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>' + messageText + '</div>';
        if (messageAlert && messageText) {

          $('#formid').find('.messages').html(alertBox);
          $('#formid').resetForm();
          $('#formid')[0].reset();

        }
      }
    });
    return false;
  }
});


3 Réponses :


3
votes

La suppression de la classe .was-validated de

masquera les validations.

https://getbootstrap.com/docs/4.0/components/forms/ #validation

Bootstrap étend les styles : invalid et : valid à la classe parent .was-validated , généralement appliquée au formulaire < > . Sinon, tout champ obligatoire sans valeur apparaît comme non valide au chargement de la page. De cette façon, vous pouvez choisir quand les activer (généralement après la tentative d'envoi du formulaire).


1 commentaires

je n'avais pas .was validé dans mon formulaire



0
votes

comme ceejayoz l'a suggéré, vous pouvez supprimer les appels was-validate en appelant

$('#formid').removeClass('was-validated')

Notez que was-validated a été ajouté lorsque vous soumettre le formulaire.Vous pouvez simplement déboguer dans votre navigateur et vous verrez toutes les classes que votre formulaire a après avoir appelé submit.


0 commentaires

0
votes

classList.remove ("a été validé"); https://codepen.io/saurabh111121/pen/ExgbmgR


1 commentaires

essayez d'ajouter ici aussi la réponse de votre codepen, votre réponse perd sa valeur si le lien codepen ne fonctionne plus. Donc, évitez d'écrire des réponses de lien uniquement, donc fournit également du code exécutant html, css, js de base