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 :

Position élément tableau


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2003
    Messages : 59
    Par défaut Position élément tableau
    Bonjour,

    J'ai un tableau à 2 dimensions contenant des objectHTMLbuttonElement.
    J'aimerai récupérer la position du bouton dans le tableau en cliquant dessus, par ex : 1 4 ou 5 8

    Merci.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    for (var i = 0; i < 8; i++) {
          for (var j = 0; j < 8; j++) {
            tab[i][j].addEventListener("click", function() {
                 traitement(this);
                });
            }
        }

  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 658
    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 658
    Billets dans le blog
    1
    Par défaut
    rattache les indexes i et j à l'objet
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     tab[i][j].dataIdx=[i,j];
    tab[i][j].addEventListener("click", function() {
                // this.dataIdx=[i,j]; <= ligne à supprimer !!!
                 traitement(this);
                });
    tu pourras ensuite récupérer les i et j dans ta fonction vu que tu passes l'objet en param
    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 confirmé
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2003
    Messages : 59
    Par défaut
    Merci pour ton aide mais chaque fois que je clique sur un bouton j'ai 8,8 qui s'affiche.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function traitement(btn) {
          alert(btn.dataIdx);
    }

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2003
    Messages : 59
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    tab[i][j].dataIdx=[i,j];
    tab[i][j].addEventListener("click", function() {
                 this.dataIdx=[i,j]; j'ai enlevé cette ligne est ça fonctionne merci.
                 traitement(this);
                });
    Par contre pourrais tu me renseigné sur dataIdx car je n'ai pas trouvé d'information concernant cet attribut.

  5. #5
    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
    Une réaffectation malheureuse dans le callback... Mais en analysant le code fourni, ça devrait être facile à déboguer...

    En réaffectant dans le callback, les valeurs de i et j correspondent à celles des variables de boucle après la dernière itération, d'où ton résultat.
    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

  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 658
    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 658
    Billets dans le blog
    1
    Par défaut
    oui désolé un copier coller malencontreux ... je rectifie mon code précédent

    tu ne trouvera aucune doc sur datIdx ...
    c'est juste une propriété que je rattache à l'objet pour y stocker un array avec tes indexex de i et j
    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 !

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

Discussions similaires

  1. petit soucis de position de tableau
    Par Holic dans le forum Mise en page CSS
    Réponses: 10
    Dernier message: 29/10/2009, 23h31
  2. [XSL-FO] bizarrerie sur absolute-position avec tableau
    Par titouille dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 16/09/2009, 15h42
  3. [HTML] Position fixe tableau
    Par Anne73 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 31/03/2009, 16h44
  4. Élément tableau dans variable de session
    Par akara dans le forum Langage
    Réponses: 9
    Dernier message: 03/08/2007, 14h32
  5. [Tableaux] pb accéder élment tableau
    Par dubitoph dans le forum Langage
    Réponses: 11
    Dernier message: 03/04/2006, 13h11

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