JavaScript语法错误:函数体后缺少}

JavaScript语法错误:函数体后缺少},javascript,regex,Javascript,Regex,所以…我不为自己发布这篇文章感到骄傲,但我真的被卡住了。我有一个表单,我只想在JavaScript中验证它,然后将它传递给控制器。结果我得到了Missing}错误,但我不知道原因。 以下是HTML: <form id='contact_form' method='POST' name='contactform'> <p>First Name: <input name='first_name' type='text' /></p><br/&g

所以…我不为自己发布这篇文章感到骄傲,但我真的被卡住了。我有一个表单,我只想在JavaScript中验证它,然后将它传递给控制器。结果我得到了
Missing}
错误,但我不知道原因。

以下是HTML:

<form id='contact_form' method='POST' name='contactform'>
<p>First Name: <input name='first_name' type='text' /></p><br/>
<p>Last Name: <input name='last_name' type='text' /></p><br/>
<p>Company: <input name='company' type='text' /></p><br/>
<p>Email Address: <input name='email' type='text' /></p><br/>
<p>Phone: <input name='phone' type='text' /></p><br/>
<p>Address: <input name='address' type='text' /></p><br/>
<p>Message:<textarea name='message'></textarea></p><br/>
<a id='submit'>Submit here</a>
</form>

名字:


姓氏:


公司:


电子邮件地址:


电话:


地址:


信息:


在此提交

下面是JavaScript:

<script>
    $('#products').on("click", "#submit", function () {

        $('input').removeClass('error');
        $('textarea').removeClass('error');
        var isValid = true;

        // verifica nume si prenume
        var firstNameReg = new RegExp(/^[^\d]{3,}$/);
        if (!firstNameReg.test($('input[name=first_name]').val())) {
            $('input[name=first_name]').addClass('error');
            isValid = false;
        }

        var lastNameReg = new RegExp(/^[^\d]{3,}$/);
        if (!lastNameReg.test($('input[name=last_name]').val())) {
            $('input[name=last_name]').addClass('error');
            isValid = false;
        }

        // verifica telefon
        var telReg = new RegExp(/^[\d]{10}$/);
        if (!telReg.test($('input[name=phone]').val())) {
            $('input[name=phone]').addClass('error');
            isValid = false;
        }

        // verifica email
        var emailReg = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
        if (!emailReg.test($('input[name=email]').val())) {
            $('input[name=email]').addClass('error');
            isValid = false;
        }

        if (isValid) {
            alert("Formularul este completat corect!");
        }
    });
</script>

$(“#产品”)。在(“单击”,“提交”,函数(){
$('input').removeClass('error');
$('textarea').removeClass('error');
var isValid=true;
//验证您的身份
var firstNameReg=newregexp(/^[^\d]{3,}$/);
if(!firstNameReg.test($('input[name=first_name]')).val()){
$('input[name=first_name]')。addClass('error');
isValid=false;
}
var lastNameReg=newregexp(/^[^\d]{3,}$/);
if(!lastNameReg.test($('input[name=last_name]')).val()){
$('input[name=last_name]')。addClass('error');
isValid=false;
}
//验证电话
var telReg=newregexp(/^[\d]{10}$/);
if(!telReg.test($('input[name=phone]').val()){
$('input[name=phone]')。addClass('error');
isValid=false;
}
//验证电子邮件
(2)目前,(::::.[[[[[[[w-.[[w-][[[[w-]][[[[w-[[[w-]++));;([[[[[w-[[[[[[[[w-[[[[[[w-[[[[[w-[[[[[[[w-[[[[[3]]]]]除除除除除除除除除除上述上述上述两两两个)外,,)))))))))的新reg,(,(,(,(,(,(除除除除除除除上述上述上述两两个(())两两个)除除除除除除除除除除除除除除除除除[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[3]]]]](25[0-5]| 2[0-4][0-9]| 1[0-9]|{2,2}){2}(25[0-5]| 2[0-4][0-9]| 1[0-9]{2,2}){1,2}元/i);
if(!emailReg.test($('input[name=email]').val()){
$('input[name=email]')。addClass('error');
isValid=false;
}
如果(有效){
警告(“Formularul este completat corect!”);
}
});


所以…如果你有任何想法,请给我一个提示!谢谢大家!

这不是答案,只是验证的改进

我不能确定是什么原因导致你的花括号出现问题,它可能位于另一个文件中,而不是你的。如果下面的代码不起作用,请将你的完整项目上传到某个地方,以便我可以进一步调查。 我重写了您的验证代码并将其缩短了一点(因为您并不为此感到自豪)


你在哪一行得到这个错误?您的代码看起来有效。浏览器在函数体sk:99:164之后只显示:SyntaxError:missing},但绝对不是这样。是否还有其他代码?你分享的东西似乎没有错误,事实上就是这样。我在QuickCart CMS中添加了一个简单的表单。我只添加了html本身和我(完全)在页脚中发布的javascript代码。就这样!您确定浏览器没有缓存脚本吗?请注意
first\u name:new RegExp(/^[^\d]{3,}$/)
=
first\u name:/^[^\d]{3,}$/
[^\d]
=
\d
$('#contact_form').on('click', '#submit', function() {
    var validations = {
        first_name: new RegExp(/^[^\d]{3,}$/),
        last_name: new RegExp(/^[^\d]{3,}$/),
        phone: new RegExp(/^[\d]{10}$/),
        email: new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i)
    }

    $('input, textarea').removeClass('error');

    for (var key in validations)
        if (!validations[key].test(contactform[key].value))
            $(contactform[key]).addClass('error');

    if (!$('#contact_form .error').length)
        alert("Formularul este completat corect!");
});