フォームのコンテンツが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>
完全な「関数型コード」はこのjsfiddleにあります。
入力ボックスの内容が変わると、テーブル上部の色も変わる必要があります。タグに2つのクラスを使用しています。1つはデフォルトで、もう1つはコンテンツが'document.getElementById( "idName")。className="newClassName";'を介して変更される場合です。しかし、動作しません。なぜですか?またはそれを行うためのより良い簡単な方法?