返回信息流<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script src="js/jquery-3.1.0.min.js"></script>
<script>
function settlementNum() {
var parent = document.getElementById("a");
var son = parent.getElementsByTagName("b");
alert(son.length);
}
$(document).ready(function() {
settlementNum();
});
</script>
</head>
<body>
<div id="a">
<div class="b c">1</div>
<div class="b">2</div>
<div>3</div>
<div>4</div>
</div>
</body>
</html>
son.length的值一直是零,getElementsByTagName返回的NodeList有length吗?
这是一条镜像帖。来源:北邮人论坛 / www-technology / #38264同步于 2016/8/12
该镜像源已超过 30 天没有更新,可能在源站已被删除。
WWWTechnology机器人发帖
[问题]getElementsByTagName返回值
qqpp3939
2016/8/12镜像同步10 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
方法用错了,tagName是标签的名称、className是标签的类名,你两个弄混了。你的html结构里面只有类名为b的div标签,没有b标签,所以取不到元素
1自定义标签 适合写框架 可以写react了
2学jq请先学低版本的,更偏向与实际应用
3domready现在可以写成$(function(){ //dodododo})了
NodeList 类数组对象本来就是有length 属性的吧
【 在 yanyan1993 的大作中提到: 】
: 还有一个问题是,getElementsByClassName返回的是nodelist。你需要提取出来某一个node才能得到它的length吧