JS中getElementById("id"),他是控制id(还是唯一)的,有没有可以想他那样的功能但是控制的是多个的。
2个回答
展开全部
javascript的方法,如果要求返回的是单一项,那么在有多个的情况下会返回第一个。
假如说你的页面上有2个id都是test的控制项,那么
document.getElementById('test')会返回第一个test控制项.
若想返回多个就有点麻烦,需要循环写.
不过jquery有提供更简便的选择器:
$('id=test')就会返回多个
假如说你的页面上有2个id都是test的控制项,那么
document.getElementById('test')会返回第一个test控制项.
若想返回多个就有点麻烦,需要循环写.
不过jquery有提供更简便的选择器:
$('id=test')就会返回多个
更多追问追答
追问
我知道jquery比较简单,但是用jquery使用id时,也是选取了第一个id为text的。例如:
$(document).ready(function(){
$("button").click(function(){
$("#uu").hide();
});
});
classclassclassclassclass
lililililililililililililililililililililililililililili
隐藏
追答
。。。。
你就当我白说了。
我明明写的是$('id=uu')~~~
我有写过$('#uu') ?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
getElementsByName("name值"):返回给定name值的元素数组。
getElementsByTagName("tagName"):返回给定tagName值的元素数组。
getElementsClassName("calss值"):返回给定class属性值的元素数组。
<html>
<head>
<title> new document </title>
</head>
<script>
window.onload=function(){
var nameValue = "bc";
var tagName = "div";
var className = "ad";
//alert(document.getElementsByName(nameValue).length);//这个竟然失败了。。。。
alert(document.getElementsByTagName(tagName).length);
alert(document.getElementsByClassName(className).length);
}
</script>
<body>
<div>1</div>
<div class="ad">2</div>
<div class="ad">3</div>
<div name="bc" class="ad">4</div>
<div name="bc">5</div>
<p class="ad">6</p>
<p name="bc">7</p>
<p class="ad">8</p>
<p class="ad">9</p>
</body>
</html>
getElementsByTagName("tagName"):返回给定tagName值的元素数组。
getElementsClassName("calss值"):返回给定class属性值的元素数组。
<html>
<head>
<title> new document </title>
</head>
<script>
window.onload=function(){
var nameValue = "bc";
var tagName = "div";
var className = "ad";
//alert(document.getElementsByName(nameValue).length);//这个竟然失败了。。。。
alert(document.getElementsByTagName(tagName).length);
alert(document.getElementsByClassName(className).length);
}
</script>
<body>
<div>1</div>
<div class="ad">2</div>
<div class="ad">3</div>
<div name="bc" class="ad">4</div>
<div name="bc">5</div>
<p class="ad">6</p>
<p name="bc">7</p>
<p class="ad">8</p>
<p class="ad">9</p>
</body>
</html>
追问
我测试了一下,貌似只有alert(document.getElementsByTagName(tagName).length);才能正确的弹出结果。当我屏蔽上面两个单独测试你的alert(document.getElementsByClassName(className).length);才发现既然不弹框,还希望你能解答下。
追答
经测试,以上三个方法,在谷歌浏览器和火狐浏览器都能正常使用,但IE中只有getElementByTagName有效。这个是浏览器兼容问题,但你可以自己写个方法来通过类名获取对象,我有空再把方法给你补上。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询