因此,我有一个带有jQuery的表单,该表单可防止用户使用Enter键提交表单。
这是代码:
$(document).ready(function() {
// code prevents user submitting form using the enter button - must use submit button.
$(window).keydown(function(event){
if(event.keyCode == 13) {
event.preventDefault();
return false;
}
});
.....
});
如果我有ID,我现在如何允许在一个输入字段中使用Enter键?回车键只能在该一个表单输入字段上使用。
也可以使用输入字段CSS而不是ID来完成此操作吗?
也可以使用输入字段名称完成此操作吗?
这是输入字段:
<input id="id_tags__tagautosuggest" name="tags" type="text" class="kmw-disabled keymanweb-font">
我尝试了几次尝试并用谷歌搜索了一个答案,但是我无法使它正常工作。
最佳答案
您可以使用event.target.id
阻止并允许特定输入。
$(window).keydown(function(event){
if(event.keyCode == 13) {
if(event.target.id==="allowedInput"){
alert('submit form')
}else{
alert('not submitting')
event.preventDefault();
return false;
}
}
});
演示:
$(window).keydown(function(event) {
if (event.keyCode == 13) {
if (event.target.id === "allowedInput") {
alert('submit form')
} else {
alert('not submitting')
event.preventDefault();
return false;
}
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input id="allowedInput" name="allowedInput" type="text" class="kmw-disabled keymanweb-font">
<input id="notallowedInput" name="notallowedInput" type="text" class="kmw-disabled keymanweb-font">
如某些性能建议,您也可以使用选择器来匹配输入
对于前
event.target.matches("#allowedInput")
,这将使输入与选择器匹配,您也可以添加名称或类名称。