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

JavaScript Discussion :

Changer la couleur d'un champs en rouge si la valeur n'est pas bonne


Sujet :

JavaScript

  1. #1
    Membre du Club
    Inscrit en
    Octobre 2009
    Messages
    95
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Octobre 2009
    Messages : 95
    Points : 57
    Points
    57
    Par défaut Changer la couleur d'un champs en rouge si la valeur n'est pas bonne
    Salut tout le monde

    j'aimerai faire une division des nombres à condition qu'il ne soit pas avec zéro

    Code : 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
                              <form class="form-inline" action="division" method="post">
    					<div class="form-group">
    						<label class="sr-only" for="NumberSeven">NumberSeven</label> <input
    							type="number" class="form-control" id="numberSeven"
    							name="numberSeven" min="-100" max="100" step="1" value="0">
    					</div>
    					<div class="form-group">
    						<label for="nbr2"><strong> / </strong> </label> <input
    							type="number" class="form-control" id="idErreur" min="-100"
    							max="100" value="0" name="numbeHeight" step="1"
    						 pattern="[^0]*" title="Ce champs ne peux pas ëtre 0" > 
    						<c:if test="${ numbeHeight==0}">
    							<!--  <span class="glyphicon glyphicon-remove form-control-feedback"></span>-->
    							<span style="color: red;" class=" alert alert-danger">* ${alerte }</span>
    						</c:if>
    					</div>
    					<button type="submit" class="btn btn-primary">Submit</button>
    				</form>
    j'aimerai faire en sorte que lorsque la valeur saisie la case 2 est différente de zéro, une alerte s'affiche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <span style="color: red;" class=" alert alert-danger">* ${alerte }</span>
    mais j'aimerai également que le champs devienne rouge que ce soit avec le javascript ou avec bootstrap ....

    Et merci beaucoup

  2. #2
    Futur Membre du Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Octobre 2015
    Messages : 5
    Points : 7
    Points
    7
    Par défaut
    Bonjour,

    Tu peux utiliser :invalid de css.
    Tu trouveras un exemple ici: https://jsfiddle.net/ggxoyk2d/

  3. #3
    Membre du Club
    Inscrit en
    Octobre 2009
    Messages
    95
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Octobre 2009
    Messages : 95
    Points : 57
    Points
    57
    Par défaut
    Dans la propriété de l'input j'ai mis " pattern="[^0]* " " pour qu’il n'accepte pas le nombre Zéro
    Et j'ai ajouté la déclaration dans le fichier de CSS
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <style type="text/css">
     
    input[pattern]:invalid {
    	border: 2px solid red;
    }
    </style>
    Mais ça n'a rien changé la seul affichage le message de la fonction de test de JSTL
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <c:if test="${ numbeHeight==0}">
    							<span style="color: red;" class=" alert alert-danger">*
    								${alerte }</span>
    						</c:if>
    Aidez moi et merci bcp

  4. #4
    Membre du Club
    Inscrit en
    Octobre 2009
    Messages
    95
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Octobre 2009
    Messages : 95
    Points : 57
    Points
    57
    Par défaut
    je ne sais pas comment annuler le nombre 0 dans la zone de texte que je voudrai être rouge si je mes la valeur zéro
    comme ça

    pattern="(^[0]*)?$" ou pattern="(^[0]*)"

    quelle est la valeur juste ?

  5. #5
    Futur Membre du Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Octobre 2015
    Messages : 5
    Points : 7
    Points
    7
    Par défaut
    Si tu mets "^([^0].*)?$" ca devrait marcher.

  6. #6
    Membre du Club
    Inscrit en
    Octobre 2009
    Messages
    95
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Octobre 2009
    Messages : 95
    Points : 57
    Points
    57
    Par défaut
    Heureusement ça va pas marcher aussi

    Y-t-il une différence entre la page HTML et JSP car j'ai utilisé le Servlet et le jsp ?

  7. #7
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 658
    Points
    66 658
    Billets dans le blog
    1
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  8. #8
    Futur Membre du Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Octobre 2015
    Messages : 5
    Points : 7
    Points
    7
    Par défaut
    L'utilisation de la JSP n'influe juste sur l'ajout de ton span d'alert avec la balise c:if.
    J'ai repris ton code dans un JSField d'exemple et le 0 est bien en rouge : https://jsfiddle.net/xkgtd8x2/
    Peux-tu être plus précis sur ce qui semble pas marcher?

  9. #9
    Membre du Club
    Inscrit en
    Octobre 2009
    Messages
    95
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Octobre 2009
    Messages : 95
    Points : 57
    Points
    57
    Par défaut
    Rien de nouveau je ne sais pas d'ou il vient le problème j'essayais de changer

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    input[pattern]:invalid {
    	border: 2px solid red;
    }
    </style>
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    .input[pattern]:invalid {
    	border: 2px solid red;
    }
    </style>
    et ensuite avec le changement de mon petit formulaire de programme
    Code : 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
    <div class="panel panel-primary">
    			<div class="panel-heading">Division</div>
    			<div class="panel-body">
    				<span class="alert-success">${ messageDivision }</span>
    				<form class="form-inline" action="division" method="post">
    					<div class="form-group">
    						<label class="sr-only" for="NumberSeven">NumberSeven</label> <input
    							type="number" class="form-control" id="numberSeven"
    							name="numberSeven" min="-100" max="100" step="1">
    					</div>
    					<div class="form-group">
    						<label><strong> / </strong> </label><label class="sr-only"
    							for="NumberHeight">NumberHeight</label> <input type="number"
    							class="form-control" id="idErreur" min="-100" max="100"
    							name="numbeHeight" step="1" pattern="^[^0]+.*$">
    						<c:if test="${ numbeHeight==0}">
    							<span style="color: red;" class=" alert alert-danger">*
    								${alerte }</span>
    						</c:if>
    					</div>
     
    					<button type="submit" class="btn btn-primary">Envoyer</button>
    				</form>
    			</div>
    		</div>
    et je devrais changer la patern avec les différentes syntaxes

    ou bien avec ce changement
    et aussi

  10. #10
    Futur Membre du Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Octobre 2015
    Messages : 5
    Points : 7
    Points
    7
    Par défaut
    Je viens de me rappeler que j'ai du enlever type="number" sur ton input.

  11. #11
    Membre du Club
    Inscrit en
    Octobre 2009
    Messages
    95
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Octobre 2009
    Messages : 95
    Points : 57
    Points
    57
    Par défaut
    Lorsque j'ai changé le type de mon input a texte ou bien j’ai enlevé ça va marcher mais est ce que ce possible de le mettre type "number" pour qu'il je devrais incrémenter et desincrementer les valeurs introduite par l'utilisateur

  12. #12
    Futur Membre du Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Octobre 2015
    Messages : 5
    Points : 7
    Points
    7
    Par défaut
    En fait tu ne pas mettre d'attribut pattern avec le type number.
    Il faut donc utiliser du javascript...
    J'ai mis à jour le JSField: https://jsfiddle.net/xkgtd8x2/1/
    J'ai modifié le css pour enlever pattern.
    J'ai ajouter un attribut oninput sur le input qui permet d'invalider ton champs quand il est égale à 0 lors d'une saisie.
    J'ai aussi ajouté une ligne javascript qui invalide ton champ car tu l'initialise à 0.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2010] Changer la couleur d'un champ text nommé lbl
    Par toumack dans le forum VBA Access
    Réponses: 1
    Dernier message: 30/01/2012, 08h41
  2. Réponses: 1
    Dernier message: 19/01/2009, 16h45
  3. Changer le format d'un champ en fonction d'une valeur
    Par zoom61 dans le forum VBA Access
    Réponses: 6
    Dernier message: 17/06/2007, 21h35
  4. Réponses: 3
    Dernier message: 11/01/2007, 17h52
  5. changer la couleur d'un champ via condition
    Par tomas dans le forum IHM
    Réponses: 3
    Dernier message: 18/12/2006, 15h01

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