添加id到输入

时间:2014-09-24 12:04:24

标签: javascript

我有这个输入:<input type="text" name="1">

使用vanilla JS如何为其分配ID?要使它看起来像这样:<input type="text" name="1" id="2">

到目前为止有这个,不起作用,我找不到原因......

var xyz = document.getElementsByName(1");
xyz.setAttribute("id", "2");

5 个答案:

答案 0 :(得分:1)

getElementsByName返回数组。您需要将set属性设置为单个元素。哈克:xyz[0].setAttribute...

答案 1 :(得分:1)

正如VeroLom所说,

  

getElementsByName返回数组。

所以你必须只返回一个元素:

var xyz = document.getElementsByName(1")[0]; // there, I pick the first element of the array
xyz.setAttribute("id", "2");

答案 2 :(得分:1)

var xyz = document.getElementsByName("myName");
xyz[0].id = "myId";

xyz[0].setAttribute("id", "myId");

请注意IDs and names can't start wit a number

答案 3 :(得分:1)

它们的函数.getElementsByName(1)返回一个名为1的HTML DOM对象数组。

要访问第一个元素,请尝试:

xyz = document.getElementsByName("1")[0];
xyz.setAttribute("id", "2");

顺便说一下,ID应该以字母开头。

答案 4 :(得分:0)

var xyz = document.getElementsByName(1");
xyz.setAttribute("id", "2");

这为您提供了一个名为“1”的元素数组。所以你需要遍历并给每个元素赋予id。

因此,如果您确定只有一个具有此名称的元素,则可以执行

 var xyz = document.getElementsByName("1")[0];
 xyz.setAttribute("id", "2");