整个代码如下。如下代码中alert(x[0].value);这个语句中的[0]是什么意思呀,为什么要加这个,跟据我才开始学到的内容里讲[]这里面一般都是放的数组的内容或在操作数组时里面可以设置要操作的是第几的个数组。但在这里x获取到的umse不是一个数组呀。。。求大神帮助解析一下,万分感谢哈。。
<!DOCTYpE html>
<html>
<head>
<meta charset="UTF-8" />
<title>这是第一个网页</title>
<link href="style.css" rel="stylesheet" type="text/css">
<script>
function ch(){
var x=document.getElementsByName('umse');
alert(x[0].value);
}
</script>
</head>
<body>
<p id="nav" class="nav2" onclick="ch()">这是第一个网页</p>
<input type="text" name="umse" value="中文" />
</body>
</html>
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
document.getElementsByName
返回的当然是数组,只不过是只有一个元素的数组,所以要用x[0]
。你自己尝试一下x.value
的返回不就明白了……document.getElement(s)
系列函数只有document.getElementById
不返回数组,也只有它的函数名里是单数。https://developer.mozilla.org/en-US/docs/Web/API/Document/getElementsByName
返回一个节点列表的集合,
HTMLCollection
。[0]取第一个,因为x返回的是数组
http://www.w3school.com.cn/jsref/met_doc_getelementsbyname.asp
定义和用法
getElementsByName() 方法可返回带有指定名称的对象的集合。
语法
document.getElementsByName(name)
该方法与 getElementById() 方法相似,但是它查询元素的 name 属性,而不是 id 属性。
另外,因为一个文档中的 name 属性可能不唯一(如 HTML 表单中的单选按钮通常具有相同的 name 属性),所有 getElementsByName() 方法返回的是元素的数组,而不是一个元素。
为啥不看文档??