1

セル名(数値)に従ってテーブルの特定のセルに自動的に入力する必要がありますが、その名前でセルを呼び出すと、インデックス番号として解釈され、正しいセルに入力する代わりに、インデックスに対応する順序セル。

document.getElementById("myTR").cells['9'].innerHTML = "testValue"

//the following doesn't work either 
a ='9'  or  a = 9
b = a.toString()
document.getElementById("myTR").cells[b].innerHTML = "testValue"

これを解決する方法はありますか?私は文字を数字(9n)に集約しようとしましたが、それは機能します。これについての既知の手順があるかどうか疑問に思います。

4

4 に答える 4

2
document.getElementsByName('9')[0].innerHTML = 'testVal';

名前で要素を取得し、最初の (唯一の) 要素を選択し、Bob はあなたのおじです。

于 2012-10-19T09:44:31.330 に答える
1

JSの純粋主義者に憤慨するかどうかはわかりませんが、これにはjQueryを使用することをお勧めします。これは、次の目的で構築されたものです。

$("#myTR TD[name='9']").html("testValue");

これにより、IDのタグに9という名前のセルが含まれるはずです。trmyTR

ここにあなたのためのフィドルがあります:http://jsfiddle.net/aZEXV/1/

于 2012-10-19T09:39:57.553 に答える
1

名前が一意の場合は、これを試してください:

document.getElementByName('9').innerHTML = 'testValue';

ところで、jquery を使用してセルを操作することをお勧めします。jquery を使用するコードは次のとおりです。

$('td[name=9]','#myTR').html("testValue");
于 2012-10-19T09:41:17.157 に答える
1

あなたはこれを試すことができます

HTML

<table>
    <tr id="myTR">
        <td>Row1</td><td name="9">Row1</td>
    </tr>
    <tr><td>Row2</td><td>Row2</td></tr>
</table>

JS

var x='9';
document.getElementsByName(x)[0].innerHTML = "testValue";

デモ

また、数字で始まる名前を宣言しないようにしてください。

于 2012-10-19T09:52:14.617 に答える