JavaScript,数字和字符串

时间:2012-10-19 09:36:30

标签: javascript

我需要根据单元格名称(也就是数字)自动填充表格的某些单元格,但是当你通过它的名称调用单元格时,它会被解释为它的索引号而不是填充正确的单元格将填充与索引对应的序数单元格。

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 个答案:

答案 0 :(得分:2)

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

按名称获取元素,选择第一个(唯一)元素,Bob是你的叔叔。

答案 1 :(得分:1)

不确定我是否会对JS纯粹主义者不满意,但我建议使用jQuery,这就是为它构建的:

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

应该获取tr标记中名为9的单元格,其标识为myTR

这是你的小提琴:http://jsfiddle.net/aZEXV/1/

答案 2 :(得分:1)

如果名称是唯一的,请尝试此操作:

document.getElementByName('9').innerHTML = 'testValue';
顺便说一下,我建议你使用jquery来操作单元格,遵循代码使用jquery:

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

答案 3 :(得分: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";

DEMO

还要尽量避免声明以数字开头的名称。