我知道,我可以从一个表格单元格获取类的名字,如果我有小区的ID,即获取类细胞无ID标签
scr = document.getElementById(cellid);
classN = scr.className;
但是我想要得到的类名从可能有1000多个单元格的表格中选择。我可以做到这一点,而不是每个细胞id'ing?
任何帮助,将不胜感激。
感谢
我知道,我可以从一个表格单元格获取类的名字,如果我有小区的ID,即获取类细胞无ID标签
scr = document.getElementById(cellid);
classN = scr.className;
但是我想要得到的类名从可能有1000多个单元格的表格中选择。我可以做到这一点,而不是每个细胞id'ing?
任何帮助,将不胜感激。
感谢
而不是在单元格上设置千个处理程序,为什么不设置一个在桌子上?
thetable.onclick= function(e){
e= window.event || e;
var who= e.srcElement || e.target;
var t= who.tagName;
if(t== 'TD' || t== 'TH'){
//do whatever to the cell
}
//finish up with
if(e.stopPropagation) e.stopPropagation();
else e.cancelBubble= true;
}
你可以做
<script type="text/javascript">
function travel(src) {
src.setAttribute("class", "style_notEmptyOrWhateverTheNewStyleIsCalled");
}
</script>
<td class='style_empty' onClick='javascript:travel(this)'>no Data</td>
嗯,当然。 document.getElementById
只是通过ID从DOM中获取节点的快捷方式。您可以通过任何其他方法自由地找到这些节点;即找到table
节点,然后递归通过它的孩子找到每个td
。您可能为此需要getElementsByTagName
- 有关详情,请参阅W3C DOM documentation。
你有没有试过只给表一个ID并得到它的方式?
<table id='someTableId' class='whatever'>...
scr = document.getElementById('someTableId');
classN = scr.className;
在我的表中的每个空单元格是这样的