0
votes

Comment obtenir la valeur d'un TD d'un TD différent lors d'une case à cocher?

J'ai une table configurée comme ceci:

$(this).closest('td').prev('td').prev('td').prev('td').prev('td').prev('td')[0]


2 commentaires

Avez-vous toujours le même ordre? Ou avez-vous besoin de pouvoir rechercher cette valeur (une sélection dynamique)?


Ils auront toujours le même ordre, c'est pourquoi nous utilisons le prev ('TD') pour accéder à la bonne TD.


3 Réponses :


0
votes

Si vous connaissez l'index du TD, vous aurez besoin des données de (c.-à-d. Ce sera toujours le 5ème TD dans la table), vous pouvez utiliser:

console.log(tds[4].innerText)


2 commentaires

Cela fonctionne si ma table est une rangée unique, mais il y a plusieurs rangées, chacune avec sa coche et sa valeur que j'ai besoin pour saisir.


@Voldune hmm, je viens de le tester et elle attrapa tout le TDS de toute la table. Je devais résoudre le numéro d'index sur "4" (excuses) mais cela devrait fonctionner autre que cela.



0
votes

Si vous utilisez jQuery, vous pouvez utiliser le sélecteur : NTH-enfant ( Plus d'infos ici )

Depuis votre case à cocher est à l'intérieur d'une ligne spécifique, vous pouvez déplacer votre sélecteur sur cette ligne, puis utiliser le sélecteur enfant, comme celui-ci: xxx


0 commentaires

0
votes

Vous pouvez utiliser Index () et EQ () de JQuery pour obtenir les valeurs comme suit:

 $("#SomeValueWorkCompleted").change(function() {
    var parentTD = $(this).closest("td");
    var index = $("#someID td").index(parentTD);
    value = $("#someID td")
      .eq(index - 5)
      .text();
    console.log(value);
  });


0 commentaires