Korzystanie z selektora w jQuery nth-child
, to powinno działać:
$("#table").find("td:nth-child(2)").each(function() {
});
używa selektor nth-child
, http://api.jquery.com/nth-child-selector/, który jak twierdzi łącza, by wybrać wszystkie <td>
elementy, które są 2nd dzieckiem swojego rodzica (który byłby <tr>
).
Oto skrzypce że pokazuje to: http://jsfiddle.net/GshRz/
Jeśli szukasz selektora że dostaje <td>
s, które są tylko bezpośrednio w tabeli (jak nie w tabeli zagnieżdżonej), a następnie użyć coś takiego:
$("#table").children("tbody").children("tr").children("td:nth-child(2)").each(function() {
});
http://jsfiddle.net/GshRz/1/
zależności od swojej struktury (gdzie może zawierać <thead>
), można użyć .children("thead, tbody")
zamiast tylko .children("tbody")
.
Również w przypadku, gdy chcesz zdobyć kilka kolumn, łatwiej będzie wybrać elementy <tr>
, a następnie pobrać elementy ich dzieci: <td>
. Na przykład:
$("#table1").children("tbody").children("tr").each(function (i) {
var $this = $(this);
var my_td = $this.children("td");
var second_col = my_td.eq(1);
var third_col = my_td.eq(2);
console.log("Second Column Value (row " + i + "): " + second_col.html());
console.log("Third Column Value (row " + i + "): " + third_col.html());
});
http://jsfiddle.net/GshRz/2/
Co selektory użyć i gdzie jest do struktury i zawartości tabeli. Pamiętaj więc, aby rozróżnić między children
i find
, a nth-child
i eq
.
Wygląda na to, został poproszony przed i odpowiedział: http://stackoverflow.com/questions/6917143/loop-through-the- komórki-kolumny-nie-komórki-wiersza-z-jquery-or-js-on – Marquez