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は、実際にはTRに含まれています。これを、最後の行エントリにデータがあるすべての行のドロップダウンとして使用しています。
行をクリックすると、クラスc_sub_rowの次の行がdisplay:noneからdisplay:table-rowに変わります。これはうまく機能しますが、その場合は前の行の色を取得する必要があります。
最終更新-JonathanSampsonに感謝します
以下のコメントに基づいた最終的な解決策は次のとおりです。
$('.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
});