我想创建一个JavaScript函数来解析我的HTML页面,通过它的ID获取Table,然后,为每个<tr>
添加一个类属性,就好像该行是第一个,我将添加:
class =“line1”到<tr>
但如果该行是第二行,我会将class =“line2”添加到<tr>
请怎么做
答案 0 :(得分:6)
如果我理解正确,你想要改变类名来获得某种斑马风格吗?
var table = document.getElementById('yourTableId');
var rows = table.rows;
for(var i = 0, l = rows.length;i < l; i++) {
rows[i].className = 'class' + ((i%2) + 1);
}
答案 1 :(得分:0)
在jquery中很容易......如下所示: -
$(document).ready(function() { //for table row $("tr:even").addClass("AlternateBG1"); $("tr:odd").addClass("AlternateBG2"); })
但是在JQUERY ......
答案 2 :(得分:0)
没有jQuery很容易:
oTBody=document.getElementById("tBodyId");
//for (key in oTbody.childNodes) {
for (var nPos=0, nLength = oTbody.childNodes.length; nPos<nLegth; nPos++)}
oRow = oTbody.childNodes[nPos];
if (oRow && oRow.tagName && oRow.tagName.toLowerCase() == "tr") {
oRow.className = (bNormalRow? sClass1:sClass2);
bNormalRow = !bNormalRow;
}
}
答案 3 :(得分:0)
var table = document.getElementById("yourTableId");
for(var i in table.rows){
table.rows[i].className = 'line'+(i+1).toString();
}
答案 4 :(得分:-1)
使用jQuery非常简单,可以执行以下操作:
var i = 1;
$("#myTable tr").each(function() {
$(this).addClass("line"+i);
i++;
});
其中#myTable是你的表id,每个函数里面的$(this)将是循环中的当前元素。