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 :

[jquery]Verifier l'état d'un bouton radio


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 044
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 044
    Par défaut [jquery]Verifier l'état d'un bouton radio
    Bonjour à tous, je travail en ce moment sur un big formulaire qui me demande beaucoup de travail.
    Celui-ci est pratiquement terminé mais il lui manque quelque chose, une validation des boutons radio.
    Je souhaite empecher que mon bouton disabled ne sois accessible si les boutons radio appartenant a une certaine CLASS ne sois tous cochés .
    Voici mon html en partie :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <div class="ParentsQuest_8">
            <label>
             Voulez-vous créer une campagne?
            </label>
            <span price="500">
                <input type="radio" name="LinksCampagn" value="1" class="quantity" />
                Oui
                <input type="radio" name="LinksCampagn" value="0" class="quantity" />
                Non
     
               <span class="total"></span>
            </span>
          </div>
    Ceci n'est qu'une infime partie du formulaire, en faites toutes les div contenant une class ParentsQuest_ doivent être vérifier donc s'il ne sont pas tous coché renvoi une alert et bloque le bouton.

    Voici ce que j'ai essayer de faire :

    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
    jQuery('#calc').click(function(){
     
    			var string = "";
     
    			if (jQuery('div.ParentsQuest_8 input[@type=radio][@name=Url]', !this.checked)) {
    				string = this.name + ": " + this.checked + "\n";
    				alert(string);
    			}else {
    				var sendForms = jQuery('#process #sendForms');
    				sendForms.removeAttr('disabled', 'disabled');
    				sendForms.css({
    					backgroundColor: 'white',
    					color: 'orange',
    					border: '1px solid grey'
    				});
    			}
    		});
    Voici le html du fameux bouton
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <div id="process">
    	      <input type="button" id="calc" value="Recalcul" />
    	      <input type="submit" id="sendForms" value="Resultat" disabled="disabled" />
          </div>
    Il me renvoi chaque fois mon alert même si je coche une des propositions , je ne comprend pas pourquoi
    j'ai 9 Class de ce type à verifier

  2. #2
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Par défaut
    normal => !this.checked
    donc il rentrera au moins une fois dans ta boucle si l'une de tes checkbox n'est pas sélectionnée

  3. #3
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 044
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 044
    Par défaut
    je viens d'essayer ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    if (jQuery('div.ParentsQuest_4 input[@type=radio]', this).checked == false) {
    				string = this.name + ": non coché" + "\n";
    				alert(string);
    				return false;
    			}else {
    				var sendForms = jQuery('#process #sendForms');
    				sendForms.removeAttr('disabled', 'disabled');
    				sendForms.css({
    					backgroundColor: 'white',
    					color: 'orange',
    					border: '1px solid grey'
    				});
    				return true;
    			}
    Mais pareille sa ne fonctionne pas il affiche le bouton disabled et ne renvoi pas le message d'erreur pourtant je ne l'ai pas coché

  4. #4
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    (jQuery('div.ParentsQuest_4 input[@type=radio]', this)
    le this se réfère au bouton sur lequel tu as cliqué, et dans ce bouton, tu recherches les input de type radio... comme il n'y en a pas, le résultat est false, donc ton test revient à
    qui est toujours vrai !
    Donc
    il affiche le bouton disabled et ne renvoi pas le message d'erreur pourtant je ne l'ai pas coché
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  5. #5
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 044
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 044
    Par défaut
    oui juste mais alors pk ceci ne fonctionne pas:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    if (jQuery('div.ParentsQuest_4 :radio.quantity').checked == !this.checked) {
    					string = this.name + ": non coché" + "\n";
    					alert(string);
    				return false;
    			}else {
    				var sendForms = jQuery('#process #sendForms');
    					sendForms.removeAttr('disabled', 'disabled');
    					sendForms.css({
    						backgroundColor: 'white',
    						color: 'orange',
    						border: '1px solid grey'
    					});
    				return true;
    			}
    suis vraiment une poire, un truc simple qui me pose problème

  6. #6
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Tu as 2 boutons radio, donc toujours au moins un qui n'est pas coché...
    Citation Envoyé par le_chomeur
    normal => !this.checked
    donc il rentrera au moins une fois dans ta boucle si l'une de tes checkbox n'est pas sélectionnée
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

Discussions similaires

  1. rappel de l'état d'un bouton radio
    Par laurentSc dans le forum Langage
    Réponses: 5
    Dernier message: 12/12/2013, 23h04
  2. verifier bouton radio
    Par Marcus15 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 02/07/2007, 10h36
  3. déselection bouton radio suivant l'état d'un autre
    Par faucon54 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 29/05/2007, 14h18
  4. [asp-html]état d'un bouton radio
    Par Adren dans le forum ASP
    Réponses: 1
    Dernier message: 02/08/2006, 11h57
  5. Récuperer l'état d'un bouton radio
    Par Jibees dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 05/04/2006, 09h54

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