IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

jQuery Discussion :

Modifier une class suite à requête ajax


Sujet :

jQuery

  1. #1
    Membre à l'essai
    Femme Profil pro
    maçon
    Inscrit en
    Octobre 2018
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : maçon
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2018
    Messages : 39
    Points : 21
    Points
    21
    Par défaut Modifier une class suite à requête ajax
    Bonjour a tous

    je travail sur un formulaire d'inscription.
    j'utilise les class de bootstrap pour mettre un peu de css dans celui ci.

    le traitement de mon formulaire renvois une erreur comme par exemple un mot de passe trop court.

    voici le formulaire
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <form id="register_form" onsubmit="return false;" style="margin:10px;">
         <div class="form-group">
              <label for="pass1">Mot de passe</label>
              <input type="password" placeholder="6 caractères minimum" id="pass1" name="pass1" class="form-control" required/>
              <small id="output_pass1"></small>
         </di>
         <div id="status">
              Remplir tous les champs
         </div>
         <input type="submit" id="bRegister" class="btn btn-info" value="Inscription" />
    </form>

    on utilise une requet ajax pour tester cette case

    Code js : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
     
    $(document).ready(function(){
     
      $("#register_form input").focus(function(){
        $("#status").fadeOut(800);
      });
     
       $("#pass1").keyup(function(){
        //on verifie si le mot de passe est ok
        if($(this).val().length < 6){
          $("#output_pass1").css("color", "red").html("<br/>trop court (6 caracteres minimum)");
        } else if ($("#pass2").val() != "" && $("#pass2").val() != $("#pass1").val()){
          $("#output_pass1").html("<br/>les deux mots de passe sont différents");
          $("#output_pass2").html("<br/>les deux mots de passe sont différents");
        } else {
          $("#output_pass1").html('<img src="theme/default/img/check.png" alt="" />');
        }
      });
     
      $("#pass2").keyup(function(){
        /* On verifie si les deux mot de passe sont identique */
        check_password();
      });
     
      function check_password(){
        $.ajax({
          type: "post",
          url: "index.php",
          data: {
            'pass1_check' : $("#pass1").val(),
            'pass2_check' : $("#pass2").val()
          },
          success: function(data){
            if(data == "success"){
              $("#output_pass2").html('<img src="theme/default/img/check.png" alt="valide" />');
              $("#output_pass1").html('<img src="theme/default/img/check.png" alt="valide" />');
            } else {
              $("#output_pass2").css("color", "red").html(data);
            }
          }
        });
      }
    });


    actuellement j'affiche une image pour dire que c'est ok ou un message d'erreur dans le output_pass

    mais je souhaiterais remplacer cela par un autre style.
    par exemple quand on clique dans la case elle est bleu par defaut.
    si le mot de pass remplis les critere mon met en vert
    sinon en rouge

    comme ça je ne met que le message d'erreur dans la div status en fin de formulaire.

    merci de votre aide et surtout de vos explications.

  2. #2
    Membre à l'essai
    Femme Profil pro
    maçon
    Inscrit en
    Octobre 2018
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : maçon
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2018
    Messages : 39
    Points : 21
    Points
    21
    Par défaut
    voila ce que j'ai utiliser pour faire la modification de la class

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $("#pseudo").addClass("is-invalid");
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $("#pseudo").addClass("is-valid");
    Donc voila j'ai la balise vert ou rouge en fonction du retour

    mais le soucis c'est si je rentre quelque chose de valide derrière la mise a jour ne ce fait pas.

    si j'ai fais une erreur ben ça reste rouge ??

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    il existe aussi :

Discussions similaires

  1. Capter l'evenement sur une classe suite AJAX
    Par flashnet dans le forum jQuery
    Réponses: 5
    Dernier message: 07/02/2012, 18h27
  2. Modifier une classe via Jquery
    Par Fooshi dans le forum jQuery
    Réponses: 10
    Dernier message: 08/06/2011, 11h31
  3. [Javassist] Modifier une classe
    Par paco293410 dans le forum Général Java
    Réponses: 2
    Dernier message: 01/12/2008, 11h49
  4. Modifier une classe par une autre classe
    Par Couz02 dans le forum C++
    Réponses: 15
    Dernier message: 05/05/2008, 10h54
  5. [CSS] modifier une classe à la volée, est-ce possible ?
    Par guidav dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 15/01/2007, 15h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo