我正在使用 jQuery 1.11。如果用户按下键盘上的“d”键,我想运行一个动作。所以我有这个
$(document).keypress(function(e) {
if(e.which == 68 || e.which == 100) {
submitDownloadUsersReq();
}
});
但是,如果他们在文本框中按“d”键,我不希望触发上述操作。如何修改上述内容,以便在用户弄乱表单字段时不会触发操作?
我正在使用 jQuery 1.11。如果用户按下键盘上的“d”键,我想运行一个动作。所以我有这个
$(document).keypress(function(e) {
if(e.which == 68 || e.which == 100) {
submitDownloadUsersReq();
}
});
但是,如果他们在文本框中按“d”键,我不希望触发上述操作。如何修改上述内容,以便在用户弄乱表单字段时不会触发操作?
d
当用户从输入元素按下时,您可以取消事件,
$(document).keypress(function(e) {
if(!$(e.target).is("input")) {
if(e.which == 68 || e.which == 100) {
submitDownloadUsersReq();
}
}
});
e.target
您可以使用and来检查元素的类型is()
:
$(document).keypress(function(e) {
if (!$(e.target).is(':input') && (e.which == 68 || e.which == 100)) {
submitDownloadUsersReq();
}
});
请注意,选择:input
器将匹配input
、select
和。textarea
button