jQuery regexp验证

LPB*_*LPB 0 javascript regex forms validation jquery

我想在我的表单上使用一个名为onsubmit的小jQuery函数来验证用户输入客户端.我希望字段#fname(名字)只允许az,AZ和空格.返回false应该是停止提交表单.

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

这是我的HTML:

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

当然,我稍后将在服务器端验证用户输入.当我提交表单时,它会给我一个"内部服务器错误".这让我觉得我在函数validateregister()中犯了一个错误.有什么不对的吗?如果我对jQuery很新,那么任何帮助都会受到赞赏.

谢谢!

Den*_*ret 5

你想要的是什么

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

除了修复选择器建议使用val测试功能,我冒昧地改变了正则表达式:

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

但是你知道如果你想让人们输入真正的名字,这个正则表达式可能会过于严格吗?你的,例如,不会通过......