我想用一个小的jQuery函数在表单上验证onsubmit来验证用户输入客户端。我希望字段#fname(名字)只允许a-z,A-Z和空格。返回false应该阻止表单提交。

function validateregister(){
    if (!($("fname") =~ [a-zA-Z ])) {
        return false;
    }
}


这是我的HTML:

<input type="submit" value="Join now!" id="registersubmit" class="paddingoutline2" onsubmit="return validateregister()">


当然,稍后我将在服务器端验证用户输入。当我提交表单时,它给我一个“内部服务器错误”。这使我认为我在函数validateregister()中犯了一个错误。有什么问题吗?如果我不是jQuery的新手,那么感谢您的帮助。

谢谢!

最佳答案

你想要的是

function validateregister(){
    return /^[a-zA-Z ]+$/.test($('#fname').val());
}


除了修复建议使用valtest函数的选择器之外,我还自由更改了regex:


^$强制测试覆盖整个字符串
+至少需要一个字符


但是您是否知道,如果您希望人们键入真实姓名,则此正则表达式可能太严格了?例如,您的不会通过...

09-25 15:47