当使用事件窗体onchange时,更改表格单元格文本颜色

Change Table Cell Text Color when event form onchange is used

本文关键字:表格 单元格 颜色 文本 事件 窗体 onchange      更新时间:2023-09-26

我寻找正确的方式(在所有大多数浏览器中工作)来改变单元格表的文本颜色(这是一个链接),当一个表单中的内容改变使用onchange事件。我正在使用这个:

JavaScript代码

function changeColor(num){
    if (num == "1"){
               cont = num - 1;
               answer[cont] = 1;
               document.getElementById("cell_1").className="cellNumFilled";
        } 

HTML代码

<table border="1" cellspacing="0" cellpadding="2">
  <tr>  
   <td><a class="cellNum" HREF="#preg1" title="1" id="cell_1">1</a></td> 
   <td><a class="cellNum" HREF="#preg2" title="2" id="cell_2">2</a></td> 
   <td><a class="cellNum" HREF="#preg3" title="3" id="cell_3">3</a></td> 
  </tr>
</table>
<div id="quesItem">
<p><b>1. [ 1 Pts.]</b> bla bla bla</p>
<p>Answer: 
  <input type="text" name="a6" maxlenght="200" size="20" onchange="changeColor(1)" />
  <input type="button" value="Preview"/> 
</p>
</div>

完整的"功能代码"在本文档中。

当输入框中的内容改变时,表格顶部的颜色也必须改变。我使用两个类标记,一个默认情况下,另一个当内容通过'document.getElementById("idName"). classname ="newClassName";'改变,但不工作。知道为什么吗?或者有更好更简单的方法?

在设置class之前,像这样删除这个属性

document.getElementById("cell_1").removeAttribute("class")

document.getElementById("cell_1").setAttribute("class","cellNumFilled")

尝试如下:

document.getElementById("idName").setAttribute('class', 'className');