当前位置: 首页 > 面试题库 >

JavaScript 获取触发事件的元素的ID

屠泰平
2023-03-14
问题内容

有什么方法可以获取触发事件的元素的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>

当然,如果从第一种形式触发事件,则var test应该包含id "aaa";如果"bbb"从第二种形式触发事件,则var 应该包含id 。


问题答案:

在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");
    });
});


 类似资料:
  • 问题内容: 在Tkinter中,我将多个小部件绑定到鼠标左键。单击它们都会触发同一事件。 如何恢复单击了哪个窗口小部件? 我想要这样,当按下状态时,我将能够恢复在触发事件中被按下的小部件。 问题答案:

  • 问题内容: 我有一个用jQuery 方法动态生成的with : 包含一些输入元素,它们被加载到modal中。 使用jQuery的方法,我可以在事件触发后捕获输入值,但是当将元素动态添加到模式div时,当用户输入文本时事件不会触发。 哪种jQuery方法支持处理由动态创建的元素触发的事件? 用于创建新输入元素的代码为: 捕获用户值的代码是: 第二个代码块似乎适用于原始元素,但不会由新的动态生成的元素

  • 本文向大家介绍iframe里面的元素触发父窗口元素事件的jquery代码,包括了iframe里面的元素触发父窗口元素事件的jquery代码的使用技巧和注意事项,需要的朋友参考一下 例如父窗口定义了一个事件。 top: $(dom1).bind('topEvent', function(){}); 那么iframe里面的元素怎样触发父窗口dom1的事件呢?这样吗? $(dom1, parent.do

  • 问题内容: 我在我的Web应用程序中同时使用了Bootstrap和AngularJS。我很难让两个人一起工作。 我有一个元素,它具有属性 我想在用户在字段中输入时更新属性。该函数已正确触发,但是除非我使用,这是jQuery方式,而不是AngularJS方式,否则我无法访问触发事件的元素。 使AngularJS与旧式JS模块一起工作的最佳方法是什么。 问题答案: 不会将DOM元素传递给函数。这里将参

  • 问题内容: 我知道有很多问题问类似的事情。但没人能真正解决我的问题。 我正在尝试建立一个指令,当在当前元素之外单击鼠标时,该指令将执行一个表达式。 为什么需要此功能?我正在构建一个应用程序,在此应用程序中,有3个下拉菜单,5个下拉列表(如所选)。所有这些都是角度指令。让我们假设所有这些指令都是不同的。因此,我们有8个指令。它们都需要相同的功能:在元素旁边单击时,需要隐藏下拉菜单。 我对此有2个解决

  • 问题内容: 对于通过HTTP触发的Google Cloud Functions,可以通过检查HTTP请求()的标头来检索执行ID : 但是,对于由PubSub事件触发的GCF,我找不到如何检索此执行ID的方法: 我已经研究了(https://cloud.google.com/pubsub/docs/reference/rest/v1/PubsubMessage),但其中只包含+一个空的地图。 我还