使用javascript验证字段中的密钥输入

果酱绿

我在用

document.getElementById('input-field').addEventListener('keyup', function (e) {
  if (!String.fromCharCode(e.which).match(/[A-Za-z0-9,]/)) {
    event.preventDefault();
  }
});

它几乎可以正常工作。问题是我无法使用键箭头,退格键,删除键,Ctrl + a等。

如何将其限制为仅在特定输入中提供字符串表示形式的那些键?

cнŝdk

要忽略这些键,您需要在验证输入之前添加条件。

例如,您可以创建一个数组,其中包含要忽略的所有KeyCode的列表,并仅测试键入的键是否不是其中之一。

这是您需要的:

document.getElementById('input-field').addEventListener('keypress', function(e) {
  //An array of special Keys
  var specialKeys = [37, 38, 39, 40, 8, 13, 27, 46];
  if (specialKeys.indexOf(e.which) === -1) {
    console.log(String.fromCharCode(e.which)+ ' Key is validated!');
    if (!String.fromCharCode(e.which).match(/[A-Za-z0-9,]/)) {
      event.preventDefault();
    }
  }
});
<input type="text" id="input-field" placeholder="input text here">

笔记:

如注释中所述,您需要使用keypress事件而不是keyup立即验证每个输入的字符。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Javascript 中的基本输入字段验证

使用JavaScript验证多个输入字段

使用JavaScript或jQuery验证输入字段

使用javascript验证文本字段中的输入(需要为两个值之一)

空输入字段的JavaScript验证

使用JavaScript验证Shiny App中的字段

无法使用 PHP 和 JavaScript 验证表单输入字段

在JavaScript中使用鼠标滚轮事件验证输入字段的问题

将模式链接到输入字段并使用JavaScript进行验证

验证React中的输入字段

Javascript 验证输入字段 + 选择字段

AngularJs使用指令中的输入字段来验证表单

使用JavaScript来验证使用form_tag的输入字段时,“提交”按钮停止在rails中工作

如何使用JavaScript在输入字段中输入值?

验证输入字段全名(名字,姓氏)-JavaScript

PHP和Javascript输入字段验证

如何使用jquery验证插件来验证输入字段中带有点的名称?

使用Codeigniter中的其他输入字段来验证可选的图像上传字段

如何使用Selenium和Python在网页的输入字段中传递经过验证的用户输入

在输入数字字段中输入负数并使用 ng-pattern-restrict 进行验证

如何验证反应中的输入字段?

JSF中的输入文本字段验证

在React中验证表单输入字段

如何在Tkinter中验证输入字段

SwiftUI验证文本字段中的输入

验证GUI中的文本字段输入

使用jQuery验证表单输入字段

使用Angular在模糊时验证输入字段

如何使用php验证输入字段