我想动态设置 div 的背景颜色等于直接进行它的表行的背景颜色。这就是我想我想做的事情:
$(this).next().css('background-color', $(this).css('background-color'));
在此板上寻找答案时,我发现了此线程。这似乎是对他们有用的答案,但我的不起作用。任何建议都欣然接受。
编辑
对于那些要求查看我正在尝试做什么的人,这里是构建我的表格主体的 PHP 代码:
<?php
// For every row past the first (header) row, create a table entry
while ( $row = fgetcsv($handle) ) {
echo "<tr class='c_edd_row'>";
// Build each cell
$num = count($row);
for ($c=0; $c < $num; $c++) {
// Do not echo entries 23 through 27 (unused cells)
if ( $c < 23 || $c > 27 ) {
echo "<td>".$row[$c]."</td>";
// save the last entry for the hidden div
$validation_notes = $row[$c];
}
}
echo "</tr>";
echo "<tr class='c_sub_row'>
<td colspan='42' class='c_notes_div'>
<div class='c_notes_div'>".$validation_notes."</div>
</td></tr>";
}
?>
响应者是正确的,我没有很好地说明我的问题。我所说的 div 实际上包含在 TRs 中。我将其用作最后一行条目中包含数据的每一行的下拉列表。
当我单击一行时,具有类 c_sub_row 的下一行从 display:none 更改为 display:table-row,效果很好,但我需要它在发生这种情况时采用前一行的颜色。
最终更新 - 非常感谢 Jonathan Sampson
这是基于以下评论的最终解决方案:
$('.c_edd_row').on('click', function(event) {
var bg = $(this).css("background-color");
$(this).next().css("background-color", bg); // colors the next row
$(this).next().find('div').css("background-color", bg); // colors the div
});