javascript获取ID的问题
发布网友
发布时间:2022-05-16 20:49
我来回答
共6个回答
热心网友
时间:2022-05-16 22:18
html规则要求ID名称不能相同,会冲突的。如果你要选择多个对象要用tag或者class。不要使用ID属性。常用的dom方法有:
getElementsByClassName
getElementsByTagName
getElementsByClassName有时候会失灵,所以,getElementsByTagName遍历所有的对象,然后对所有的对象class属性进行区别。
你也可以用jquery的选择器比如$(".class")来选择你要的对象。
热心网友
时间:2022-05-16 23:36
<script type="text/javascript">
function Req(obj){
alert(obj.getAttribute("id"));
}
</script>
<h1 id='f2' onclick='Req(this)'>问题</h1>
<h1 id='f1' onclick='Req(this)'>问题</h1>
如果你是想取ID里面的f1 f2 上面的代码 就取得了。
<script type="text/javascript">
function Req(obj){
obj.innerHTML = "求解决";
}
</script>
<h1 id='f2' onclick='Req(this)'>问题</h1>
<h1 id='f1' onclick='Req(this)'>问题</h1>
或者你是需要这样。
追问我的那段代码为什么不行呢?
追答因为你的function 里面的 this 是指向那个方法本身的,而不是你的点击元素。所以你看上去没有变化,则不是代码没执行。而我把this 写在了 h1 里面了。这个时候 this 代表的就是 h1 这个元素,那么传过去之后,obj就是指向这个元素的,这时候对这个元素进行操作,则会有效果。不知道这样讲你明白没。
热心网友
时间:2022-05-17 01:11
原生方法 return this.getAttribute("id")
热心网友
时间:2022-05-17 03:02
<html>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
</head>
<script>
function req(obj){
alert($(obj).attr('id'));
}
</script>
<body>
<h1 id='f2' onclick="req(this)">question</h1>
<h1 id='f1' onclick="req(this)">question</h1>
</body>
</html>
热心网友
时间:2022-05-17 05:10
<html>
<head>
<script>
function req(obj){
obj.innerHTML='qqq';
}
</script>
</head>
<body>
<h1 id='f2' onclick="req(this)">question</h1>
<h1 id='f1' onclick="req(this)">question</h1>
</body>
</html>
热心网友
时间:2022-05-17 07:35
document.getEletmentById("f2");