我知道,我可以從一個表格單元格獲取類的名字,如果我有小區的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;
在我的表中的每個空單元格是這樣的