使用JavaScript验证用户输入

时间:2009-11-16 02:05:36

标签: javascript validation

我需要这样做,以便用户只能在输入框中键入a-z0-9。如何才能使用户根本无法输入其他字符?如果这不可能,我怎么能用regex检查输入?

谢谢!

5 个答案:

答案 0 :(得分:2)

如果您使用jQuery,那么format plugin可以完全满足您的需求。除此之外,您可以使用onkeyup / onkeyup来调用函数,该函数将根据正则表达式模式验证输入。

答案 1 :(得分:2)

另一个值得注意的解决方案是jquery的这个字母数字插件: http://itgroup.com.ph/alphanumeric/

简单为$('#textField').alphanumeric();

答案 2 :(得分:1)

您可以使用onKeyDown事件。如果从事件处理程序返回false,则不会触发按键事件并且键被“吃掉”。

以下是Sun的文档:http://docs.sun.com/source/816-6408-10/handlers.htm#1120313

答案 3 :(得分:1)

这是一个从this page改编而来的解决方案:

window.onload = function () {
    document.forms.myForm.myField.onkeypress = keyTest;
}

function keyTest(e) 
{
    var key = window.event ? e.keyCode : e.which;
    var keychar = String.fromCharCode(key);
    reg = /[a-z0-9]/i;

    if (key != 8 && key != 9) return reg.test(keychar);
}

答案 4 :(得分:0)

确保您也在服务器上执行验证(假设有一个服务器部分),以防某些用户关闭了javascript。