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 :

recuperer le nombre d'elements d'un tableau d'id


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 52
    Par défaut recuperer le nombre d'elements d'un tableau d'id
    Bonjour,

    Ma question du jour:
    J'ai formulaire dans une page html qui contient un tableau comprenant plusieurs checkbox du style:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <input name="choix_tailles[0]" id="choix_tailles[0]" type="checkbox" value="0" />
    <input name="choix_tailles[1]" id="choix_tailles[1]" type="checkbox" value="1" />
    <input name="choix_tailles[2]" id="choix_tailles[2]" type="checkbox" value="2" />
    <input name="choix_tailles[3]" id="choix_tailles[3]" type="checkbox" value="3" />
    ......
    à la construction de la page, je ne sais pas exactement combien de ligne j'aurais...

    Avant de lancer le formulaire je lance une fonction de validation et souhaiterai pouvoir contrôler toutes les checkbox pour en connaitre leur statut.

    Y a t il un moyen en javascript de connaitre le nombre de ligne d'une famille d'id? (Pour le moment, je fais une boucle bourrin sur 50 qui est un nombre maximum, mais je ne trouve pas cela très propre!)

    Merci pour vos réponses,

  2. #2
    Expert éminent

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Par défaut
    Bonjour,

    Si vous modifiez vos name pour qu'ils soient tous égaux :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <input name="choix_tailles" id="choix_tailles[0]" type="checkbox" value="0" />
    <input name="choix_tailles" id="choix_tailles[1]" type="checkbox" value="1" />
    <input name="choix_tailles" id="choix_tailles[2]" type="checkbox" value="2" />
    <input name="choix_tailles" id="choix_tailles[3]" type="checkbox" value="3" />
    Et que vous faites :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    var tab_checkbox = document.getElementsByName("choix_tailles");
    Vous obtenez un tableau dont vous pouvez connaitre la taille :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    tab_checkbox.length

  3. #3
    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 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 659
    Billets dans le blog
    1
    Par défaut
    pour le DOM les crochets [] sont des caractères comme les autres ...
    le fait de mettre des indices ne constitue pas un tableau coté client.
    Cela ne sert que dans le cas d'un formulaire avec les names, et, dans ce cas les données sont interprétées coté serveur lors de la soumission du formulaire comme un array.
    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 !

  4. #4
    Membre Expert
    Avatar de RomainVALERI
    Homme Profil pro
    POOête
    Inscrit en
    Avril 2008
    Messages
    2 652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : POOête

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    pour le DOM les crochets [] sont des caractères comme les autres ...
    le fait de mettre des indices ne constitue pas un tableau coté client.
    Cela ne sert que dans le cas d'un formulaire avec les names, et, dans ce cas les données sont interprétées coté serveur lors de la soumission du formulaire comme un array.
    Oulalala je n'avais pas pensé à ça... ça me donne des ptites idées pour la prochaine énigme JS...

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 52
    Par défaut
    Merci pour vos infos, j'y vois un peu plus clair que cette nuit

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

Discussions similaires

  1. nombre d'element dans un tableau d'une bdd
    Par demiange dans le forum WebDev
    Réponses: 0
    Dernier message: 20/02/2012, 15h14
  2. Réponses: 4
    Dernier message: 08/02/2007, 18h55
  3. [VB6] Nombre d'element dans un tableau ?
    Par belfaigore dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 20/09/2006, 22h23
  4. recuperer le nombre element d'une liste deroulante
    Par fallered dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 19/10/2005, 14h11

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