0

我有一些潜水,每次潜水都有它的 id,如下所示。我想当用户首先点击我的 HTML 时,找到点击的元素是 div ,然后想要获取所选 div 的 id 和内部 HTML。

我不想在我的 div 元素上使用 onclick() 和 .. 之类的方法,这种方法可以通过 jquery 或其他方式实现吗?

<div id="a2">123</div>
<div id="a1">456</div>

我使用了这段代码但不起作用

$('html').click(function () {
    var selectedelement = jQuery('div');
});
4

4 回答 4

3
$('.someClassForYourDivs').click(function () {
    var selectedelement = $(this);
});

jQuery 中的值this通常设置为触发事件的任何对象。此外,正如 cernunnos 指出的那样,您应该将此单击处理程序添加到您想要的特定元素中。为他们分配一个班级以使这变得容易。

于 2013-07-30T16:59:44.720 回答
2

您的选择器正在向“HTML”节点添加点击事件。如果您只关心 div,我建议您执行 f9ollowing,因为选择器将获得任何 DIV:

$('div').click(function () {
    var selectedelement = this;
});

如果您只关心 ID 为 'a1' 和 bd 'a2' 的 DIV,请执行以下操作:

$('#a1,#a2').click(function () {
        var selectedelement = this;
    });
于 2013-07-30T17:01:19.930 回答
2
$('div').click(function () {
    var selectedelement = $(this).attr('id');
    alert(selectedelement);
});
于 2013-07-30T17:02:36.350 回答
0

您可以使用委托,如果您将 div 动态添加到页面,则效果很好:

$("html").on("click", "div", function() {
    console.log($(this).attr("id"));
});

看到这个小提琴:http: //jsfiddle.net/DGeF9/

于 2013-07-30T17:03:36.120 回答