jQuery:如何获取单击的元素id

时间:2017-06-22 21:54:01

标签: javascript jquery html dom element

所以我试图获得一个被点击的元素的id,实际上是一个div。

我的代码如下所示:

$(document).ready(function() {
  $(".photo").on("click", function () {
      console.log("Clicked");
      var id = $(this).attr("id");
      console.log(id);
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="main">
  <div class="gallery">
    <div class="wrapper">
      <img src="foo/img.jpg" class="photo" id="1">
    </div>
  </div>
</div>

这应该返回

> Clicked
> 1
控制台上的

。这在这个片段中工作得很好,但不知何故在我的实际网站中不起作用。

它“忽略”了我的点击,就好像它在某些东西下面而且无法点击。

如果我改变

  $(".gallery").on("click", function () {

它工作正常(当我添加id当然)。

任何想法如何解决或错过了什么?

THX!

1 个答案:

答案 0 :(得分:1)

  1. 您可以使用&#34; $(this)[0]&#34;获取id名称
  2. ID名称的第一个字母不建议使用数字
  3. &#13;
    &#13;
    $(document).ready(function() {
      $(".gallery").on("click", function () {
          console.log("Clicked");
          var id = $(this)[0].id;
          console.log(id);
      });
    });
    &#13;
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <div class="main">
      <div class="gallery">
        <div class="wrapper">
          <img src="foo/img.jpg" class="photo" id="1">
        </div>
      </div>
    </div>
    &#13;
    &#13;
    &#13;