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 :

Récupérer le TR parent d'un TD parent d'un DIV et vis versa, est-ce possible ?


Sujet :

JavaScript

  1. #1
    Membre averti
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Novembre 2015
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Novembre 2015
    Messages : 49
    Par défaut Récupérer le TR parent d'un TD parent d'un DIV et vis versa, est-ce possible ?
    Bonjour, je suis bloqué dans mon projet à cause de la question en titre. J'ai vraiment besoin de vous.
    Récupérer le TR parent d'un TD parent d'un DIV et vis versa, est-ce possible?

    Actuellement, j'ai bidouillé et j'ai donné le même ID à tous les TD dans mon TR.. Puisqu'une ligne (de plusieurs colonnes) de mon tableau concerne le même produit, avec le onclick j'envoie le this.id(clé primaire du produit) et le nouveau contenu... Mais cette bidouille atteint maintenant ses limites, je n'ai pas les connaissances nécessaire pour avancer et je ne sais pas ou chercher.

    En effet, 2 cellules ne peuvent pas communiquer entre elles car elles ont le même ID... (j'en ai besoin pour mettre à jour en js le prix TTC et HT lorsqu'on modifie l'un ou l'autre). Sauf que si je donne un ID différent à mes cellules, alors le this.id envoyé en paramètre pour éditer la BDD n'est plus bon. C'est pour cette raison qu'il aurait été une bonne idée de pouvoir récupérer le <tr> parent de tous les TD, car ce TR pourrait contenir une seule fois l'id et être appelé depuis toutes les cellules d'une même ligne.

    Evidemment, il y a surement d'autres possibilité de faire (comme récupérer le contenu de la première colonne de la ligne courante qui contient elle-même l'id), qui sont les bienvenues si vous voulez mes les exposer.

    Un peu de code et une image pour illustrer.


    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
    echo '<table>
    <tr>
    <th> Image </th>
    <th>ID</th>
    <th>Nom</th>
    <th>Prix</th>
    <th>Q.</th>
    <th>Résumé</th>
    </tr>';
    while($row = mysqli_fetch_array($result)) {
        echo '<td> <img width="100%" id ="monImg" src='.$smallImg.' /></td>';
        echo '<td><div contenteditable  id="'.$row["id_product"].'" onblur=updateDataBase(this.id,this.innerHTML,1)>' . $row["id_product"] .    ' </div></td>';
        echo '<td id="aa"><div contenteditable  id="'.$row["id_product"].'" onblur=updateDataBase(this.id,this.innerHTML,2)>' . $row["nameProduct"] . '</div></td>';
        echo '<td><div contenteditable  id="'.$row["id_product"].'" onblur=updateDataBase(this.id,this.innerHTML,3)>' . round($row["price"], 3) . '</div></td>';
        echo '<td><div contenteditable  id="'.$row["id_product"].'" onblur=updateDataBase(this.id,this.innerHTML,4)>' . $row["quantity"] . '</div></td>';
        echo '<td><div contenteditable  id="'.$row["id_product"].'" onblur=updateDataBase(this.id,this.innerHTML,5)>' . $row["description_short"] . '</div></td>';
        echo "</tr>";
     
    }
    Nom : Capture d’écran 2016-03-03 à 01.20.32.png
Affichages : 433
Taille : 201,6 Ko

  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
    j'ai donné le même ID à tous les TD dans mon TR..
    Très mauvaise pratique !!!
    UN id DOIT être unique sur la page !!

    ce que tu cherche a faire se fait très simplement avec la puissance des sélecteurs de jquery ...

    https://fiddle.jshell.net/xa4pvast/

    En fonction de la structure de la table il faudra sans doute modifier les selecteurs mais le principe est là
    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 !

Discussions similaires

  1. Réponses: 3
    Dernier message: 27/12/2013, 09h57
  2. [Smarty] Please use parent::__construct() to call parent constuctor
    Par themostmd dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 07/04/2011, 23h02
  3. Programmation Java pour les enfants, les parents et les grands-parents
    Par imaintsoanala dans le forum Général Java
    Réponses: 1
    Dernier message: 25/01/2011, 13h08
  4. Réponses: 4
    Dernier message: 05/12/2010, 21h30
  5. Récupérer l'id d'un fils de parent éloigné
    Par DJ Caësar 9114 dans le forum jQuery
    Réponses: 5
    Dernier message: 31/10/2010, 23h10

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