我有一个HTML元素:
...
<div class="preferences">
...
<button class="menuButton cpnScanPressed" id="btnScanCpn">Scan</button>
...
</div>
...
并在其上绑定一个事件:
$('.preferences').on('click', '#btnScanCpn', handleScanCpn);
现在我想在按下ESC时触发该事件:
/* 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!
}
});
那么似乎有什么麻烦?!看来选择器不起作用了?!我不明白..
答案 0 :(得分:2)
您有两个id
s #btnScanDps
和#btnScanCpn
彼此不对应。我猜这是一个错字?
答案 1 :(得分:2)
您只需使用
即可$("#btnScanCpn").click();
希望这会奏效。
答案 2 :(得分:1)
您需要修复您的ID。您将事件绑定到#btnScanDps
,该事件不存在。使用正确的:#btnScanCpn
。
console.log($(".cpnScanPressed#btnScanCpn"));
$("#btnScanCpn").trigger('click');
}