document.getElementsByName()
方法返回文档中与指定名称相同的所有元素,返回的结果为一个包含所有匹配元素的 NodeList 对象。
由于一个 HTML 文档中可以有多个相同名称的元素,因此 NodeList 对象中可能包含多个元素。因此,我们需要使用循环遍历 NodeList 来访问每个匹配元素的值。
当使用
document.getElementsByName()
方法获取元素集合时,每个匹配元素都有一个
value
属性。对于表单元素,该属性包含用户输入的值;对于其他元素,该属性包含元素的默认值。
如果我们希望将匹配元素的值存储在一个数组中,我们可以创建一个空数组,并将每个元素的值添加到该数组中。示例代码如下:
var elements = document.getElementsByName("example");
var values = [];
for (var i = 0; i < elements.length; i++) {
values.push(elements[i].value);
console.log(values);
在上面的代码中,我们首先获取名称为 example
的所有元素,并将它们存储在一个名为 elements
的变量中。然后,我们创建一个名为 values
的空数组,并使用 for
循环遍历 elements
,将每个元素的值添加到 values
中。最后,我们使用 console.log()
输出 values
数组的值。
需要注意的是,getElementsByName()
方法返回的是一个 NodeList 对象,而不是一个数组。因此,我们不能直接使用数组方法(如 push()
)来操作 NodeList 对象。但是,由于 NodeList 对象类似于数组,因此我们可以使用循环来遍历它,并使用索引访问每个元素。