【发布时间】:2012-11-05 16:52:47
【问题描述】:
可能重复:
How to prevent users from entering invalid characters inside an input field
我在一个页面上有 3 个文本框。其中一个应该允许数字,其他字母和第三个数字或字母。
由于这是唯一的要求,我不想使用验证插件或任何其他 3rd 方插件。如何通过使用纯 jQuery 创建自己的插件来做到这一点?
这就是我所做的,但我感觉代码会变得太长
$(this).keydown(function(e)
{
var key = e.charCode || e.keyCode || 0;
return (
key == 8 ||
key == 9 ||
key == 46 ||
(key >= 37 && key <= 40) ||
(key >= 48 && key <= 57) ||
(key >= 96 && key <= 105));
});
谁能告诉我解决这个问题的最佳方法是什么?
【问题讨论】:
-
正则表达式可以作为最小化代码大小的一个选项,但您必须深入挖掘。
-
别忘了用户也可以从剪贴板粘贴文本,以及字符集的区域设置差异。
-
那我该如何处理剪贴板场景呢?
标签: jquery