我有一个表单,我想阻止在用户按 Enter 时提交它 但是我想要排除3个输入"规则"。
执行此操作我可以在按下 Enter 时阻止提交事件:
$(document).not("#input1", "#input2", "#input3").keydown(function(event){
if(event.keyCode == 13) {
event.preventDefault();
return false;
}
});
但是如何从这条规则中排除我的三个输入?
以下是我尝试过的内容:
$(document).keydown(function(event){
if(event.keyCode == 13) {
if ($(event.target).is('#input1') == false || $(event.target).is('#input2') == false || $(event.target).is('#input3') == false) {
event.preventDefault();
return false;
}
}
});
另一个:
trigger()
我的目的是阻止输入除三个输入之外的所有输入,但是当在其中一个输入中按Enter时,我想运行let ID = () =>
let
Source = Json.Document(Web.Contents("www.example.com")),
#"Converted to Table" = Table.FromList(Source, Splitter.SplitByNothing(), null, null, ExtraValues.Error)
in
#"Converted to Table"
in ID
。
答案 0 :(得分:1)
测试目标是您要排除的元素之一。如果是这样,请立即从处理程序返回。您还需要致电event.stopPropagation()
,否则该事件将冒泡到其他不属于排除元素的元素。
$(document).keydown(function(event) {
if (event.keyCode == 13) {
if ($(event.target).is("#input1,#input2,#input3")) {
event.stopPropagation();
return;
}
event.preventDefault();
return false;
}
}