首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery .on和.trigger

jQuery .on和.trigger
EN

Stack Overflow用户
提问于 2013-10-04 14:29:19
回答 3查看 113关注 0票数 0

我有一个html元素:

代码语言:javascript
复制
...
<div class="preferences">
    ...
    <button class="menuButton cpnScanPressed" id="btnScanCpn">Scan</button>
    ...
</div>
...

一件事就会被绑在上面:

代码语言:javascript
复制
$('.preferences').on('click', '#btnScanCpn', handleScanCpn);

现在,如果按下ESC,我想触发该事件:

代码语言:javascript
复制
/* discard changes if pressing esc */
input.keydown(function(e) {
if (e.keyCode == 27) {
    e.preventDefault();
    console.log("DEBUG"); // console says:"DEBUG"
    console.log($(".cpnScanPressed#btnScanDps")); // console says:"jQuery( )"
    $("#btnScanDps").trigger('click'); // wont fire!
    }
});

那么,有什么麻烦呢?!似乎选择器不起作用了?!我不明白..。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-10-04 14:32:43

您有两个ids、#btnScanDps#btnScanCpn,它们不相互对应。我猜是打错了?

票数 2
EN

Stack Overflow用户

发布于 2013-10-04 14:36:16

您可以简单地使用

代码语言:javascript
复制
$("#btnScanCpn").click();

希望这能成功。

票数 2
EN

Stack Overflow用户

发布于 2013-10-04 14:34:15

你得修好你的身份证。您正在将一个事件绑定到不存在的#btnScanDps。使用正确的一个:#btnScanCpn

代码语言:javascript
复制
console.log($(".cpnScanPressed#btnScanCpn"));
    $("#btnScanCpn").trigger('click'); 
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19183798

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档