如果column2
单元格不包含值或空单元格,我想循环遍历表格中的行并仅执行更改背景颜色。这就是我现在所拥有的,但我的所有行都是彩色的,我只需要在column2
中的单元格为空时应用逻辑。
JS:
// loops through rows
for (var i = 0; rows; rows = tbody.rows[i]; i++) {
//loops through cells
for (var j = 1; col; col = rows.cells[j]; j++) {
//gets cells of current row
cells = rows[i].getElementsByTagName('td');
//gets cells of col 1
ocells = rows.cells[j].getElementByTagName('td');
while (rows.cells[j] === null) {
//condition here>>
}
}
}
HTML:
<div id="table">
<table name="tbody" id="tbody1">
<tr>
<td>col1 Val1</td>
<td>col2 Val2</td>
</tr>
<tr>
<td>col1 Val3</td>
<td>col2 Val4</td>
</tr>
</table>
</div>
任何帮助将不胜感激!
答案 0 :(得分:0)
我会重新考虑循环所有事情的必要性:
如果您创建了表(或生成了表),请在第2列的每个单元格中添加一个类。
让我们称这个类:“column-2-cell”
现在使用jQuery:
$('.column-2-cell:empty').addClass('empty');
看到这个小提琴:http://jsfiddle.net/Ubz6w/
您也可以选择使用jQuery:
$('tr').each(function(i) {
var column2cell = $($(this).children('td')[1]);
if (column2cell.text() == "") {
column2cell.css('background-color', 'red');
}
});
看到这个小提琴:http://jsfiddle.net/Ubz6w/1
希望这有帮助!
答案 1 :(得分:0)
请使用此功能。如果它为空,这将设置第二个column
的背景。
var tbody = document.getElementsByName("tbody")[0];
for (var i = 0, rows; rows = tbody.rows[i]; i++) {
if(rows.cells[1].innerHTML == "") {
rows.cells[1].className += "highlight";
}
}