Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Select first TD in every row w/ jQuery

Tags:

jquery

How do I assign a style to every first cell of every row in a table?

$("#myTable tr td:first").addClass("black");
like image 630
santa Avatar asked May 27 '11 16:05

santa


2 Answers

Use the :first-child pseudo class instead of :first.

$("#myTable tr td:first-child").addClass("black");

The :first pseudo class actually selects the first element that was returned in your list. For example, $('div span:first') would return only the very first span under the first div that happened to be returned.

The :first-child pseudo class selects the first element under a particular parent, but returns as many elements as there are first children. For example, $('table tr td:first-child') returns the first cell of every single row.

When you used :first, it was returning only the first cell of the first row that happened to be selected.

For more information, consult the jQuery documentation:

  • http://api.jquery.com/first-selector/
  • http://api.jquery.com/first-child-selector/
like image 118
Devin Burke Avatar answered Nov 19 '22 12:11

Devin Burke


you were pretty close, i think all you need is :first-child instead of :first, so something like this:

$("#myTable tr td:first-child").addClass("black");
like image 10
nathan gonzalez Avatar answered Nov 19 '22 12:11

nathan gonzalez