gpt4 book ai didi

jquery $(this).id 返回未定义

转载 作者:行者123 更新时间:2023-12-03 21:29:57 24 4
gpt4 key购买 nike

我在页面上有两个 asp 单选按钮,它们放置在 updatepanel 中。我用 jQuery 为他们编写了一个点击事件,如下所示:

$(document).ready(function () {
$(".inputs").click(function () {
alert($(this).id);
});
});

但它返回未定义。有什么问题吗?

EDIT:

alert(" or " + $(this).attr("id"));
alert(this.id);

这两行返回null!

最佳答案

$(this)this 不同。第一个表示包裹在元素周围的 jQuery 对象。第二个只是你的元素。 id 属性存在于元素上,但不存在于 jQuery 对象上。因此,您有几个选择:

  1. 直接访问元素上的属性:

    this.id

  2. 从 jQuery 对象访问它:

    $(this).attr("id")

  3. 从 jQuery 中拉出对象:

    $(this).get(0).id;//或者 $(this)[0].id

  4. 事件对象获取id:

    当引发事件时,例如单击事件,它们会携带重要的信息和引用。在上面的代码中,您有一个点击事件。该事件对象引用了两个项目:currentTargettarget

    使用target,您可以获取引发事件的元素的id。 currentTarget 只会告诉您事件当前正在冒泡的元素。这些并不总是相同的。

    $("#button").on("click", function(e){ console.log( e.target.id ) });

在所有这些中,最好的选择是直接从 this 本身访问它,除非您参与一系列嵌套事件,那么最好使用 每个嵌套事件的 >event 对象(为它们提供唯一的名称)以引用更高或更低范围中的元素。

关于jquery $(this).id 返回未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10578566/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com