イベントを発生させた要素のIDを取得する 質問する

イベントを発生させた要素のIDを取得する 質問する

イベントを発生させる要素の ID を取得する方法はありますか?

私は次のようなことを考えています:

$(document).ready(function() {
  $("a").click(function() {
    var test = caller.id;
    alert(test.val());
  });
});
<script type="text/javascript" src="starterkit/jquery.js"></script>

<form class="item" id="aaa">
  <input class="title"></input>
</form>
<form class="item" id="bbb">
  <input class="title"></input>
</form>

もちろん、イベントが最初のフォームから発生した場合は vartestに id が含まれる必要があり"aaa""bbb"イベントが 2 番目のフォームから発生した場合は が含まれる必要があります。

ベストアンサー1

jQuery では、 はevent.target常にイベントをトリガーした要素を参照します。 はevent関数に渡されるパラメーターです。イベントオブジェクト

$(document).ready(function() {
    $("a").click(function(event) {
        alert(event.target.id);
    });
});

this動作しますが、これは jQuery オブジェクトではないので、これに jQuery 関数を使用する場合は、 として参照する必要があります$(this)。例:

$(document).ready(function() {
    $("a").click(function(event) {
        // this.append wouldn't work
        $(this).append(" Clicked");
    });
});

おすすめ記事