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 :

GetElementsByName.length différent entre IE et FireFox


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2002
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 23
    Points : 16
    Points
    16
    Par défaut GetElementsByName.length différent entre IE et FireFox
    Bonjour

    J'ajoute de manière dynamique des lignes à une table.
    Pour connaitre les lignes insérées je renseigne la propriété name du <TR> que je viens d'ajouter.
    Mais lorsque j'affiche le nombre de ligne ajouté, IE et Firefox ne m'affichent pas le même résultats (FireFox est correct).

    Affichage du nombre de lignes insérées
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    alert(document.getElementsByName('ligne_name').length);
    Ajout dynamiques des lignes
    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
    			//nb_Ligne 		: contient le nombre de ligne à insérer
    			//tab_colone 	: est un tableau contenant mes colonnes à insérer
    			//line_id		: contient l'ID d'une ligne de ma tablea ou je veux insérer mes nouvelles lignes
    			for(var i = 0; i < nb_Ligne ; i++){
    				//Création de la ligne
    				ligne 	= document.createElement ('tr');
    				ligne.setAttribute('name', 'ligne_name');
     
    				for(var j = 0; j < tab_colone.length ; j++){
     
    					//Création d'une cellule
    					cell 			= document.createElement ('td');
    					cell.innerHTML  = tab_colone[j];
     
    					ligne.appendChild(cell);
    					var table_ou_inserer_ligne = document.getElementById(line_id).parentNode;
    					table_ou_inserer_ligne.insertBefore(ligne, document.getElementById(line_id));
    				}
    			}

  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 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 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ligne.name= 'ligne_name';
    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 !

  3. #3
    Membre à l'essai
    Inscrit en
    Juin 2002
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 23
    Points : 16
    Points
    16
    Par défaut
    ligne.name= 'ligne_name';
    C'est ce que j'avais mis au début mais du coup aucun de mes ajout ne sont pris en compte dans le document.getElementsByName('ligne_name').length

  4. #4
    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 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    tu as un tbody dans ton tableau ?
    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 !

  5. #5
    Membre à l'essai
    Inscrit en
    Juin 2002
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 23
    Points : 16
    Points
    16
    Par défaut
    Je n'ai pas ajouter de tbody de manière explicite dans mon tableau, tu pense que l'"erreur" vient de là ?

  6. #6
    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 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    je sais que l'append sasn tbody marche moyen ... je fais des tests ...
    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 !

  7. #7
    Membre à l'essai
    Inscrit en
    Juin 2002
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 23
    Points : 16
    Points
    16
    Par défaut
    Oui j'ai déja eu ce type de problème avec IE quand j'aoutais une ligne avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById['ma_table'].appendChild(ligne)
    qui pour que ça marche devait être
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById['ma_table'].getElementByTagName['tbody'][0].appendChild(ligne)
    Mais pour le coupe j'utilise
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    table_ou_inserer_ligne.insertBefore(ligne, document.getElementById(line_id))
    mais tu as raison, je vais essayer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById['ma_table'].getElementByTagName('tbody')[0].insertBefore(ligne, document.getElementById(line_id))
    bien que je pense que ce code n'est pas des masse logique

  8. #8
    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 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    cherche pas un tr n'accepte pas de name ... passe par les id ...

    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
    26
    27
    28
    29
    30
    function zoo(){
    	for(var i = 0; i < 10 ; i++){
    				//Création de la ligne
    				ligne 	= document.createElement('tr');
    				ligne.id='ligne_name'+i
    				ligne.id=ligne.id;
    				ligne.appendChild (document.createElement ('td'));
    				document.getElementById('here').appendChild(ligne)
    				}
     
    				var TabTrs = new Array()
    				for (i=0;i<10;i++){
    				if (document.getElementsByTagName('tr')[i].id.substr(0,5)=='ligne'){TabTrs.push(document.getElementsByTagName('tr')[i])}
     
    				}
    							alert(TabTrs.length)
    							}
    </script>
     
    </head>
     
    <body onload="zoo()">
     
    <table id='blanktable' style='display:block'>
    <tbody id='here'><tr name='ligne_name'>
    	<td><input type='text' />
    	</td>
    </tr>
    </tbody>
    </table>
    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 !

  9. #9
    Membre à l'essai
    Inscrit en
    Juin 2002
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 23
    Points : 16
    Points
    16
    Par défaut
    OK, je vais me servir de ton code pour résoudre mon problème.
    Merci pour ton aide précieuse.

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

Discussions similaires

  1. Comportement couleur bordure tableau différent entre IE et Firefox
    Par Borowsky dans le forum Mise en page CSS
    Réponses: 6
    Dernier message: 28/08/2009, 01h24
  2. Réponses: 2
    Dernier message: 02/02/2009, 10h03
  3. Réponses: 12
    Dernier message: 26/10/2007, 16h27
  4. format texte différent entre IE et Firefox
    Par patbeautifulday1 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 09/05/2007, 12h03
  5. getElementsByName resultat différent sous Ie et Firefox
    Par garfield657 dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 21/08/2006, 16h25

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