Javascript $(这)不是;“提神”;使用$(文档)。在(';单击';)

Javascript $(这)不是;“提神”;使用$(文档)。在(';单击';),javascript,jquery,Javascript,Jquery,我正在使用JavaScript(或jQuery),无法正确检索调用事件的按钮的id 以下是一个简化的示例: 我有两个相同类的按钮(该类用于侦听器),id分别为“button_1”和“button_2”,我将单击其中一个按钮,启动事件并获得正确的id。现在,我将单击另一个按钮,启动事件,我仍然会获得第一个按钮的id 代码如下: $(document).on('click', '.list-button' , function(e){ var target = e.target || e.s

我正在使用JavaScript(或jQuery),无法正确检索调用事件的按钮的id

以下是一个简化的示例: 我有两个相同类的按钮(该类用于侦听器),id分别为“button_1”和“button_2”,我将单击其中一个按钮,启动事件并获得正确的id。现在,我将单击另一个按钮,启动事件,我仍然会获得第一个按钮的id

代码如下:

$(document).on('click', '.list-button' , function(e){
    var target = e.target || e.srcElement;
    var button_id = target.id;
    alert(button_id);
}
或者使用jQuery:

$(document).on('click', '.list-button' , function(e){
    var button_id = $(this).attr('id');
    alert(button_id);
}
两者都只输出第一个事件调用方。第二次,它将启动函数,但它就像“$(this)”仍然是第一个事件调用方


编辑:我对我的示例进行了太多的简化,警报工作正常,后来在代码中崩溃了。它被链接到wordpress,我必须取消定义变量以更正它。感谢您的帮助,即使我的请求毫无用处,我想您还是帮助我一步一步地阅读。

您的代码运行得非常好

$(文档)。在('单击','列表按钮')上,函数(e){
var button_id=$(this.attr('id');
警报(按钮标识);
});

按钮1

按钮2
代码工作正常

$(文档)。在('单击','列表按钮')上,函数(e){
var target=e.target | | e.src元素;
var按钮_id=target.id;
警报(按钮标识);
})

按钮1

按钮2
@PraveenKumar Argh 20秒快速降落。哈哈。。。看起来很神秘。好吧,你用的是第二个模型。。。很好。请求代码帮助的问题必须始终包含一个。请发布你的HTML。似乎有些东西对我不起作用,这让我头疼。@Gio问题在于你的HTML。试着给我们一个不起作用的代码,我们会尽力帮助你。分解你的代码。从一个空白的HTML页面开始,该页面只包含最少的代码、两个按钮、jQuery和JavaScript来生成警报。一旦开始工作,开始添加更多内容,直到它停止工作。