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 :

Bouton radio vérification coché ne fonctionne sous aucune version d'IE


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 15
    Points : 10
    Points
    10
    Par défaut Bouton radio vérification coché ne fonctionne sous aucune version d'IE
    Bonjour à toutes et à tous.
    Déjà une très belle année à tous

    J'ai un problème de javascript avec IE et j'ai beau le prendre dans différents je ne m'en sors pas. C'est pourquoi je viens vers vous chercher un peu de lumière.

    Je m'explique.
    Le problème se situe au niveau des boutons radio. Ca fonctionne sous safari, chrome, firefox mais sous aucune version d'ie


    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
    function save_data(cat)
    {
    	//verification si choix item pas vide
    	choix_item="";
    	var groupe_cat_item=document.getElementsByName("categorie_"+cat);
     
    	for(var radio in groupe_cat_item)
    	{
    		if(groupe_cat_item[radio].checked)
    		{
                            // SOUS IE, ON NE RENTRE PAS ICI
    			choix_item=groupe_cat_item[radio].value;
    			window.alert("element coché : "+choix_item);
    		}
    	}
    	if (choix_item=="") 
            {
                    // SOUS IE, TOUJOURS VRAI QQ SOIT LA VERSION
                    window.alert("Impossible de sauvegarder. Veuillez faire un choix dans la liste ");
    		exit;
    	}
    }
    Quelqu'un aurait-il une petite piste ?
    Merci d'avance.
    Aurore.

  2. #2
    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 640
    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 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for(var radio in groupe_cat_item)
    		{
    		if(radio.checked)
    ???

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 15
    Points : 10
    Points
    10
    Par défaut
    Merci de ton aide SpaceFrog,

    j'ai essayé ta proposition et ça ne fonctionne pas.
    Je vois pas ce que je peux fais comme test pour voir où ça plante....

    j'ai essayé d'enlever l'initialisaton de choix_item="";
    mais ça ne change pas.

    dois-je faire un onclick = qqch qui renvoie ma selection.
    pourtant ça devrait bien me récupérer qqch le groupe_cat_item=document.getElementsByName("categorie_"+cat);

    En tout cas merci de ton aide.
    Aurore

  4. #4
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 070
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 070
    Points : 44 672
    Points
    44 672
    Par défaut
    Bonjour,
    avec getElementsByName tu récupères une nodeList mais en faisant un for..in tu parcoures TOUTES les propriétés de celle ci et qui ne seront pas forcément les mêmes suivant le navigateur et sa version.

    Pour ne parcourir que les éléments DOM qui la compose, il te faut passer par une boucle for standard.

  5. #5
    Expert éminent
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 094
    Points : 6 755
    Points
    6 755
    Par défaut
    Attention, pas de for/in avec un tableau !

    Code console : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    >>> for (var i in document.getElementsByName("...")) console.debug(i)
    0
    1
    2
    3
    4
    item
    iterator
    length

    Utilise une boucle for classique, du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for (var i = 0, l = group_cat_item.length; i < l; i++) {
        ...
    }
    Sous IE8 et supérieur il y a un débogueur (touche F12, onglet Script). Oublie les alert pour trouver les bugs, c'est un méthode préhistorique. Mets plutôt un point d'arrêt dans ta boucle et regarde à quel moment elle sort. Je suis certain que tu trouveras rapidement le problème.

    Au fait, exit en JavaScript ça n'existe pas. Peut-être voulais-tu dire return ? Comme tu es déjà à la fin de la fonction, tu n'en as pas besoin.

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 15
    Points : 10
    Points
    10
    Par défaut
    Merci beaucoup pour ces pistes
    je regarde ça et vous tiens au courant.
    Encore Merci.

    Aurore.

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 15
    Points : 10
    Points
    10
    Par défaut RESOLU
    C'est bon le problème est résolu.
    un grand merci à tous pour votre aide.
    Aurore

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

Discussions similaires

  1. Savoir si un bouton Radio est coché
    Par bullrot dans le forum Langage
    Réponses: 4
    Dernier message: 23/09/2008, 12h30
  2. Boutons radio non cochés
    Par philippef dans le forum Langage
    Réponses: 8
    Dernier message: 26/06/2008, 20h23
  3. alerte boutons radio non coché
    Par i_need_to_know dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 18/09/2007, 17h05
  4. Réponses: 4
    Dernier message: 17/04/2007, 15h24
  5. [XHTML] Bouton radio non coché sous IE
    Par navis84 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 02/08/2006, 14h03

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