如何通过单击另一个div来获取div的类?

时间:2011-06-03 04:25:24

标签: javascript html click

我有2个div,在div中我有相同的id但不同的类。当点击一个div时,我们可以得到它的属性id.its ok ..这个id对于另一个div是相同的。如何使用此ID获取此第二个div的类?

<div class="oneclass" id="same">Hi this is the first div</div>
<div class="secondclass" id="same">Hi This is the second div</div>
<script type="text/javascript">
      $("div.secondclass").click(function () {
         pos=$(this).attr('id');
         alert("the id of the 2nd div is ="+pos);
        });
</script>

2 个答案:

答案 0 :(得分:4)

您不能拥有两个具有相同ID的元素。这是一个无效的HTML文档,依赖于重复的id属性的任何DOM检查/操作可能会在不同的浏览器中产生不可预测的结果。

那就是说,如果我不得不快速粗略地编辑你的上述代码来做你所要求的事情,我最终会得到这样的结论:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js" type="text/javascript"></script>
<div class="firstclass" id="firstid">Hi this is the first div</div>
<div class="secondclass" id="secondid">Hi This is the second div</div>
<script type="text/javascript">
      $("div.secondclass").click(function () {
         firstclass=$('#firstid').attr('class');
         alert("the class of the 1st div is ="+firstclass);
        });
</script>

与上面的jQuery相比,可能有更简洁和/或更典型的jQuery方式,但上述工作并且足够接近您的初始代码,您应该能够非常轻松地遵循这些更改。

答案 1 :(得分:2)

在HTML中,不允许两个不同的元素具有相同的id。给第二个div一个不同的id