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 :

Récupérer les valeurs dans un tableau 'complexe'


Sujet :

jQuery

  1. #1
    Membre à l'essai
    Inscrit en
    Septembre 2008
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 30
    Points : 18
    Points
    18
    Par défaut Récupérer les valeurs dans un tableau 'complexe'
    Bonjour,

    j'ai une table de données contenant des numéros de séries :
    Code HTML : 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
    <table id="TAB_OBJSTATOBJListeNumeroSerie" width="100%">
    <tbody><tr><td>
    <div id="DIVDONNEE" style="display:block" width="100%">
    <table id="TAB_1OBJListeNumeroSerie" name="TAB_1OBJListeNumeroSerie" border="1px" style="border-collapse:collapse;width:150.0px;" bordercolor="#000000" cellpadding="5">
    <thead>
    <tr class="COULEURLIGNEPAIRE">
    <th class="FONDENTETECOLONNE" genre="TXT" width="150px" tabrep="FALSE" style="cursor:pointer;" title="Tri">Numéro de série<span class="PctTriTabRep" style="display:none"></span><span class="PctTriTabRep" style="display:none"></span></th><th class="FONDENTETECOLONNE"></th>
    </tr>
    </thead>
    <tbody>
    <tr class="COULEURLIGNEIMPAIRE">
    <td onmouseover="this.style.cursor='pointer'" onclick="if(window.getSelection().toString()=='')window.open('https://monsiteweb.fr/servlet/Tbord.AfficheEnregistrement?EnrCode=2673&amp;EnrVer=1')" class="VALEURCOLONNESTRING" title="Numéro de série">3518001</td><td rowspan="1" class=""><a class="LIENINVISIBLE" title="cliquer ici pour accéder à l'enregistrement" href="https://monsiteweb.fr/servlet/Tbord.AfficheEnregistrement?EnrCode=2673&amp;EnrVer=1" target="_blank"><img src="https://monsiteweb.fr/servlet/WebContent/IMG/rechercher.png"></a></td>
    </tr>
    <tr class="COULEURLIGNEPAIRE">
    <td onmouseover="this.style.cursor='pointer'" onclick="if(window.getSelection().toString()=='')window.open('https://monsiteweb.fr/servlet/Tbord.AfficheEnregistrement?EnrCode=2703&amp;EnrVer=1')" class="VALEURCOLONNESTRING" title="Numéro de série">3518002</td><td rowspan="1" class="VALEURCOLONNE2"><a class="LIENINVISIBLE" title="cliquer ici pour accéder à l'enregistrement" href="https://monsiteweb.fr/servlet/Tbord.AfficheEnregistrement?EnrCode=2703&amp;EnrVer=1" target="_blank"><img src="https://monsiteweb.fr/servlet/WebContent/IMG/rechercher.png"></a></td>
    </tr>
    <tr class="COULEURLIGNEIMPAIRE">
    <td onmouseover="this.style.cursor='pointer'" onclick="if(window.getSelection().toString()=='')window.open('https://monsiteweb.fr/servlet/Tbord.AfficheEnregistrement?EnrCode=2594&amp;EnrVer=1')" class="VALEURCOLONNESTRING" title="Numéro de série">3718006</td><td rowspan="1" class=""><a class="LIENINVISIBLE" title="cliquer ici pour accéder à l'enregistrement" href="https://monsiteweb.fr/servlet/Tbord.AfficheEnregistrement?EnrCode=2594&amp;EnrVer=1" target="_blank"><img src="https://monsiteweb.fr/servlet/WebContent/IMG/rechercher.png"></a></td>
    </tr>
    </tbody></table>
    <script>$(document).ready(function() {$("#TAB_1OBJListeNumeroSerie").TriTBord(0,'Tri','FRA')});</script>
    </div>
    </td></tr></tbody></table>

    Je souhaite parcourir ce tableau et comparer les données Numéro de série (ligne 12, 15 et 18 code ci-dessus) à une variable saisie par l'utilisateur.

    Pour cela j'ai commencé par compter le nombre de valeurs dans ma table
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    var Nblignetdb = $("TAB_OBJSTATOBJListeNumeroSerie tbody").children().length;
    alert(Nblignetdb);
    Même cela ne fonctionne pas... Le message m'affiche toujours 0.
    Alors la récup de donnée est encore plus compliquée...

    Quelle est la logique à employer pour tout ça ?
    Je vois que dans ma table avec l'ID TAB_OBJSTATOBJListeNumeroSerie il y a une autre table (ID TAB_1OBJListeNumeroSerie), que chaque ligne de table a sa balise tr.
    Mais c'est tout

    Merci par avance pour votre aide.

    Ben

  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 662
    Points
    66 662
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <table id="TAB_OBJSTATOBJListeNumeroSerie" width="100%">
    => selecteur par is = #

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var Nblignetdb = $("#TAB_OBJSTATOBJListeNumeroSerie tbody").children().length;
    alert(Nblignetdb);
    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
    Septembre 2008
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 30
    Points : 18
    Points
    18
    Par défaut
    Merci SpaceFrog,

    effectivement, dans ce que j'avais lu sur Internet il y avait bien le dièse, mais dans mes tests de ce matin je l'ai zappé
    Au passage, que veut dire tbody qui est après l'ID du tableau ("#TAB_OBJSTATOBJListeNumeroSerie tbody")? J'ai trouvé des exemples avec cette syntaxe, mais sans info que je comprends.

    Maintenant, je retrouve bien mon nombre de lignes

    Comment retrouve t-on les valeurs de cette table (les numéros de série) ?

  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 662
    Points
    66 662
    Billets dans le blog
    1
    Par défaut
    On peut par exemple passer par l'attibut title des cellules ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    TabNS=[];
    $TDS= $("#TAB_1OBJListeNumeroSerie td").filter( function(){ return $(this).attr('title')=="Numéro de série";}).each( function(){ TabNS.push($(this).html());})
    console.log(TabNS);
    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
    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 662
    Points
    66 662
    Billets dans le blog
    1
    Par défaut
    Pas besoin du filter en fait, on peut directement passer par le selecteur pour l'attribut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    TabNS=[];
    $TDS= $("#TAB_1OBJListeNumeroSerie [title='Numéro de série']").each( function(){ TabNS.push($(this).html());})
    console.log(TabNS);
    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 !

  6. #6
    Membre à l'essai
    Inscrit en
    Septembre 2008
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 30
    Points : 18
    Points
    18
    Par défaut
    Merci pour ces informations.
    Maintenant il faut que je comprenne tout ce qui a été écrit ...

    Comment je fais si je veux récupérer, par exemple, le 2ème élément de la liste ?
    $("#TAB_1OBJListeNumeroSerie [title='Numéro de série']")(2) ?

  7. #7
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 413
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Suisse

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

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 413
    Points : 4 859
    Points
    4 859
    Par défaut
    tu peux utiliser .eq()...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $("#TAB_1OBJListeNumeroSerie td[title='Numéro de série']").eq(0).text();//première ligne
    $("#TAB_1OBJListeNumeroSerie td[title='Numéro de série']").eq(1).text();//2éme ligne
    $("#TAB_1OBJListeNumeroSerie td[title='Numéro de série']").eq(2).text();//troisième ligne

  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 662
    Points
    66 662
    Billets dans le blog
    1
    Par défaut
    Tous les nr de série sont dans un array
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    TabNS=[];
    $TDS= $("#TAB_1OBJListeNumeroSerie [title='Numéro de série']").each( function(){ TabNS.push($(this).html());})
    console.log(TabNS[1]);
    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
    Septembre 2008
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 30
    Points : 18
    Points
    18
    Par défaut
    Merci SpaceFrog pour les réponses à toutes mes questions.
    J'ai mis en place les solutions proposées.


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

Discussions similaires

  1. Réponses: 2
    Dernier message: 28/02/2012, 09h38
  2. Récupérer les valeurs dans un tableau
    Par ssxjim dans le forum Collection et Stream
    Réponses: 1
    Dernier message: 26/01/2011, 20h49
  3. récupérer les valeurs dans recordset
    Par aba_tarn dans le forum VBA Access
    Réponses: 8
    Dernier message: 20/06/2007, 18h49
  4. mettre les valeurs dans une tableau
    Par monphp dans le forum VB.NET
    Réponses: 1
    Dernier message: 01/06/2007, 16h51
  5. Récupérer les valeurs dans une fonction
    Par matmay dans le forum MATLAB
    Réponses: 3
    Dernier message: 04/05/2007, 16h50

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