Javascript 正则表达式不起作用的JSFIDLE基本表单验证

Javascript 正则表达式不起作用的JSFIDLE基本表单验证,javascript,jquery,html,css,jsfiddle,Javascript,Jquery,Html,Css,Jsfiddle,出于某种原因,JSFIDLE抛出了一个错误,我不知道为什么?我只是想用正则表达式验证输入的人名 $(“文档”).ready(函数(){ 函数validateForm(){ var userName=$(“输入[name=userName]”)val(); var subject=$(“输入[name=subject]”)。val(); var message=$(“输入[名称=消息]”).val(); if(/^[a-zA-Z]{2,30}$/.test(用户名)){ 警告(“您的姓名格式正确”

出于某种原因,JSFIDLE抛出了一个错误,我不知道为什么?我只是想用正则表达式验证输入的人名

$(“文档”).ready(函数(){
函数validateForm(){
var userName=$(“输入[name=userName]”)val();
var subject=$(“输入[name=subject]”)。val();
var message=$(“输入[名称=消息]”).val();
if(/^[a-zA-Z]{2,30}$/.test(用户名)){
警告(“您的姓名格式正确”);
}否则{
警告(“您的姓名不能包含数字或其他字符等”);
}
}
})

我觉得一切正常,只是您应该使用return false来阻止表单提交表单数据

还建议将javascript逻辑与html分离

$("document").ready(function(){
    $('form').on('submit', function() {
        var userName = $("input[name=userName]").val();
        var subject = $("input[name=subject]").val();
        var message = $("input[name=message]").val();
        if (/^[a-zA-Z ]{2,30}$/.test(userName)) {
             alert("Your name is in the correct format");
        }
        else{
            alert("Your name can't contain numbers or other characters etc.");
            return false;
        }
    });
});

ready
的参数缺少右大括号。您应该更清楚地指定错误,因为它可能是@teemu所说的,您缺少一个a),它在控制台中清楚地说明了这一点。或者,您可以将JSFIDLE设置为在加载时而不是在主体中运行javascript。它也可能是完全不同的,请提供更多关于您的错误的信息