2010-10-18 4 views
1

Я работаю над проблемой в настоящий момент, с которой я испытываю трудности. благодаря некоторым удивительно замечательным программистам у меня есть код javascript, который позволяет выделить целую строку в таблице, если ячейка с id = "date" имеет дату, которая была в прошлом. однако теперь я пытаюсь преобразовать его так, чтобы он выделял только ячейку самой датой. код у меня таквыделить отдельные ячейки

<script type="text/javascript" src="jquery-1.3.2.min.js"></script> 
<style type="text/css"> 
body { 
background-color: transparent; 
padding: 10px; 
} 
#demotable1 tr { 
background: white; 
} 

#demotable1 tr.past { 
background: #FF0000; 
color: #999999; 
} 
</style> 
<script type="text/javascript"> 
//<![CDATA[ 

$(function() 
{ 
$('#demotable1 .date').each(function() 
{ 
var cell_date = Date.parse($(this).text().replace(/(\d{2})\/(\d{2})\/(\d{4})/, '$2/$1/$3')); 
var now_date = new Date().getTime(); 
if(cell_date < now_date) 
{ 
$(this).parent('tr').addClass('past') 
} 
} 
); 
} 
); 

//]]> 
</script> 

Я попытался изменить .parent к .child и почти все мыслимые вариации этого, что я могу думать.

Любая помощь с этой проблемой будет очень полезна.

ответ

1

Просто измените свой стиль, чтобы быть для <td> вместо <tr>, как это:

#demotable1 td.past { 
    background: #FF0000; 
    color: #999999; 
} 

и изменить свой код, чтобы применить класс к этой ячейке вместо родителя, поэтому заменить это:

$(this).parent('tr').addClass('past') 

С этим:

$(this).addClass('past') 
+0

Спасибо за вашу помощь. –

Смежные вопросы