How do I assign a style to every first cell of every row in a table?
$(\"#myTable tr td:first\").addClass(\"black\");
$("#myTable tr").find("td:first").addClass("black");
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");
Try:
$("#myTable td:first-child").addClass("black");
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:
like this:
$("#myTable tr").each(function(){
$(this).find('td:eq(0)').addClass("black");
});