<p name="pr"> aaa </p>
<p name="pr"> bbb </p>
<p name="pr"> ccc </p>
<p name="pr"> ddd </p>
<p name="pr"> eee </p><script type="text/javascript"> var pArr = document.getElementsByName("pr");
alert(pArr[1].tagName);
</script>
拿到name是pr的p标签对象数组pArr,但,网页由错误,显示pArr是空的。 到底哪里出问题了?
<div id='container'>
<p> aaa </p>
<p> bbb </p>
<p> ccc </p>
<p> ddd </p>
<p> eee </p>
</div><script type="text/javascript">var container = document.getElementById("container");var p_a = container.getElementsByTagName('p')
alert(p_a)
</script>
只能用getElementsByTagName代替
或者模拟一个getElementsByClassName
我做了一个例子,可以满足你的需要。就是检索特定p标签。在特定的p标签上加入特定属性ff。通过检索特定属性ff来枚举p标签。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<script type="text/javascript" >function myFun()
{
var count = 0;
var pArr = document.getElementsByTagName("p");
for(var i=0;i<pArr.length;i++)
{
var p = pArr[i];
if ( p.getAttribute("ff") == "pr" )
{
count++;// 符合要求的p标签数目
} }
alert(count);
}
</script>
</head><body >
<p name="pr" ff="pr"> aaa </p>
<p name="pr" ff="pr"> bbb </p>
<p name="pr" ff="pr"> ccc </p>
<p name="pr" ff="pr"> ddd </p>
<p name="pr" ff="pr"> eee </p>
<p name="pr" > eee </p>
<p name="pr" > eee </p>
<p name="pr" > eee </p>
<input type="button" onclick="myFun()" value="按钮"/>
</body>
</html>
即使没有name属性. 给定义一个也不会报错
楼上的方法不错
也可以用name判断.不用扩展的ff属性
var rets = document.getElementsByName(name);
if (rets.length == 0)
{
rets = [];
var alls = document.getElementsByTagName("*");
for (var i=0;i<alls.length ; i++)
{
if (alls[i].getAttribute("name") == name)
{
rets.push(alls[i]);
}
}
}
return rets;
};---即可解决你的问题
该站详细分类JS的基础,对象,极其应用;http://www.ccscript.cn/该站有多种当今流行的JS框架;
站内主打Jquery框架的基础及应用;
包括特效代码和展示特效;
站内同时提供多种其它WEB开发服务应用;