Try this: jQuery('#Directorships tbody tr').each(function() { if (jQuery('td:nth-child(7)', $(this)).text().toLowerCase() == 'retired') { var td12th = jQuery('td:nth-child(12)', $(this)); if (td12th.text() == '0') { td12th.addClass('bgHighlight'); } } });
I added tbody to the selector so it'll ignore the head or foot if you have them. If you don't, just remove that. You want to avoid using '#Directorships' in the selector with your each() function because the context is already a specific row. So, we add $(this) as the 2nd param of jQuery() to say that we're looking for the 7th (or 12th) td of THIS row. Also, the test for 0 uses the string '0' to avoid any equivalence weirdness (since text() returns a string anyway). I suggest that you set a class ('Retired' or 'Active') on your 7th cell instead of relying on a comparison of the string content. That would also make it much simpler to select rows for highlighting. On Sun, Dec 6, 2009 at 5:55 PM, evanbu...@gmail.com <evanbu...@gmail.com> wrote: > I'm using this code hightlight any table cell in the 12th column with > a value of zero which works well. > > //SharesHeld > jQuery('#Directorships tr').each(function() { > jQuery('#Directorships td:nth-child(12)').filter(function() { > if (jQuery(this).text() == 0) > jQuery(this).addClass("bgHighlight"); > }); > }); > > I need to make this a bit more complex by hightlighting any table cell > in the 12th column with a value of zero except those rows with a value > of 'Retired' in the 7th column. I tried this approach below but if > any value in the 7th column has a value of 'Retired' then none of the > cells in the 12th get highlighted. I need to to evaluate it on a row- > by-row basis rather than the entire column. In other words, I just > want to exclude anyone who is retired. > > //SharesHeld > jQuery('#Directorships tr').each(function() { > jQuery('#Directorships td:nth-child(12)').filter(function() { > if ((jQuery(this).text() == 0) && ('#Directorships td:nth-child > (7)').not(':contains("Retired")')) > jQuery(this).addClass("bgHighlight"); > }); > }); > > In this example, the first 2 zeros in the 1st and 2nd rows should be > highlighted but the third one should not be. > > Column7 Column12 > Active 0 (highlighted) > Active 0 (highlighted) > Retired 0 (not highlighted) > > Thanks >