根据内容更改表格单元格颜色 - 上面的空单元格打破了此代码

时间:2013-07-30 15:25:31

标签: javascript

我的页面上有这个Javascript,根据内容更改单元格的字体颜色和背景颜色。当上面的所有单元格都包含值时,它可以正常工作。但是,当此列中上面的任何单元格为空白时,整个列都不会应用格式。

有什么想法吗?感谢。

var allTableCells = document.getElementsByClassName("colhomeaway");

for(var i = 0, max = allTableCells.length; i < max; i++) {
   var node = allTableCells[i];

   //get the text from the first child node - which should be a text node
     var currentText = node.childNodes[0].nodeValue; 

   //check for contents and assign this table cell's background color accordingly 
   if (currentText === "H") {
      node.style.backgroundColor = "#000099";
      node.style.color = "white";
  node.style.fontWeight = "bold";}
   else     
   if (currentText === "A"){
        node.style.backgroundColor = "#99ffff";
        node.style.color = "black";
    node.style.fontWeight = "bold";
   }
}

2 个答案:

答案 0 :(得分:1)

尝试:

   else if(currentTExt === "" or isNaN(currentText) == false){

    }

这处理空单元格

答案 1 :(得分:0)

表格单元格空白时格式不正确。使用以下解决方案之一,您将不必更改您的JavaScript。希望您可以使用其中一种技术。

this link中概述的针对此问题的两种不同解决方案。

CSS修复:

table { empty-cells: show; }

非破坏空间修复:

<td>&nbsp;</td>