1
A
回答
0
使用querySelectorAll()被操纵,以td:nth-child(3)
作为选择抓住每一个第三单元行。
迭代通过收集,添加类时细胞的textContent不为空:
var cells = document.querySelectorAll('td:nth-child(3)');
for(var i = 0 ; i < cells.length ; i++) {
if(cells[i].textContent.trim() > '') {
cells[i].classList.add('present');
}
}
.present {
background: orange;
}
<table>
<tr><th>First name</th><th>Last name<th>Country
<tr><td>Thomas </td><td>Doe </td><td>Australia</td>
<tr><td>Richard </td><td>Webster </td><td> </td>
<tr><td>Harold </td><td>Hooligan </td><td>USA </td>
</table>
0
<table id="table">
<tr>
<td>Jill</td>
<td>Smith</td>
<td>Poland</td>
</tr>
<tr>
<td>Eve</td>
<td>Jackson</td>
<td>Germany</td>
</tr>
<tr>
<td>Joe</td>
<td>Jackson</td>
<td>France</td>
</tr>
</table>
在这里,您可以遍历所有的行,并获得第3列的innerHTML进一步
var rowLength = document.getElementById('table').rows.length;
for(var i = 0;i<rowLength;i++){
console.log(document.getElementById('table').rows[i].cells[2].innerHTML);
}
0
这是一个有趣的方式,https://jsfiddle.net/c259LrpL/1/
var t = document.getElementById("table");
var trs = t.getElementsByTagName("td");
var tds = null;
for (var i=0; i<trs.length; i++)
{
tds = trs[i].getElementsByTagName("td");
for (var n=0; n<trs.length;n++)
{
if ((n+1) %3 == 0){
trs[n].classList.add("new_class");
}
}
}
0
HTML
<table id='mytable'>
<tr>
<td class="first">Name</td>
<td class="second">Occupation</td>
<td class="third">Country</td>
</tr>
<tr>
<td class="first">Name</td>
<td class="second">Occupation</td>
<td class="third"></td> <!-- empty -->
</tr>
<tr>
<td class="first">Name2</td>
<td class="second">Occupation2</td>
<td class="third">Country2</td>
</tr>
</table>
的Javascript
var Elements = document.getElementById("mytable").getElementsByClassName("third");
alert(Elements.length);
for (var i=0; i < Elements.length; i++) {
if (Elements[i].textContent != "") {
alert(Elements[i].textContent + " adding class");
Elements[i].className += "new";
}
}
CSS
.new {
background-color: lightblue;
}
工作的jsfiddle:https://jsfiddle.net/codeforwin/scyw2by0/
相关问题
- 1. 如何在数据表中添加Colum by Colum值?
- 2. 在colum csv文件中添加制表
- 3. 如何将colum(操作时间)添加到多对多关系表中?
- 4. c#将复选框colum添加到GridViewColum WPF
- 5. laravel的背包添加Colum从相关表格
- 6. Bootstrap将行添加到表
- 7. 将re.compile添加到列表
- 8. 将行添加到html表
- 9. MySQL - 将列添加到表?
- 10. 将量表添加到nvd3
- 11. 将列表添加到one2many
- 12. 将数据添加到表
- 13. 将列添加到SQLAlchemy表
- 14. 将列添加到Join表?
- 15. 将ajaxchimp添加到表格
- 16. 将表单添加到flowlayoutpanel
- 17. 将列添加到表中
- 18. 将子表添加到DataGridView
- 19. 将值添加到列表
- 20. 将行添加到表
- 21. 将行添加到matlab表
- 22. 将表格行添加到表格
- 23. Android - 将表头添加到表行(ArrayAdapter)
- 24. 如何将表名添加到表列
- 25. 将HTML表添加到另一个表
- 26. AJAX将表添加到表单元格
- 27. 将数据表添加到表(wordpress)
- 28. 将元组添加到列表列表
- 29. 将表单添加到表单(jQuery)
- 30. 将表格添加到表格行
添加类属性,每行的第三个td标签。然后,您可以使用DOM按类获取元素并检查其值 – alamoot
为什么你需要一个类?如果你现在可以在css中选择第三个专栏,那么它也可以工作吗? –
表格行具有从零开始的索引。表单元格在其行中也有一个索引,从零开始。因此,第一行中的第三列应该是'tableRef.rows [0] .cells [2]',以此类推,对于每行中的第三个单元格。但很可能有一个选择器将它们作为一个集合。你可以考虑添加一个* colgroup *元素。 – RobG