jquery - 限制输入特定字符

标签 jquery input keycode

我想将输入字段限制为任何字母、句点和连字符。

我认为以下内容将允许输入任何字母,但它不允许输入任何内容。这可能是我忽略的明显事情。

$('input').on('keypress', function(event){
    if (event.keyCode > 65 || event.keyCode < 90)
        return false;
});

提前致谢!

最佳答案

要实现此目的,您可以使用正则表达式将输入的文本与您想要允许的值进行比较,并删除任何您不允许的值。检查值时还应该使用 keyup 事件。您还可以使用 inputblurpaste 事件来确保所有浏览器都涵盖所有事件。试试这个:

$('input').on('input blur keyup paste', function() {
  $(this).val(function(i, v) {
    return v.replace(/[^a-z\.-]/ig, '');
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input name="foo" type="text" /> 

关于jquery - 限制输入特定字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47181976/

相关文章:

JAVASCRIPT:获取数组内的值

c# - 键盘代码翻译

macos - 感叹号 (!) 的 Karabiner 键码是什么?

java - "VK_..."keyCodes 是方法还是对象?

javascript - 表单自动填充后启用按钮

javascript - 在选择操作中使用多级下拉菜单

python - 输入的错误最多为1个参数,为3

php - 获取多个输入的值

javascript - 可观察数组值未更新

javascript - 在 iOS7、chrome 和 safari 中,在输入字段的焦点上,页面滚动。我该如何阻止它?