jQuery没有验证电子邮件格式

时间:2013-10-18 11:44:53

标签: jquery forms validation

相当具体的问题,这个jQuery始终记录到控制台,即使是真正的地址,电子邮件格式也是无效的。似乎无法弄清楚为什么。正则表达式是否正确?非常感谢任何帮助

    // VALIDATION ON BLUR
    $("#prospects_form > *").blur(function() {

        // Validate Email
        function valEmail() {
            var email = $("#form_email"),
                // Check address format
                emailFilter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;

            if (!emailFilter.test(email.value)) {
                // Incorrect
                $("#form_email").addClass("invalid");
                console.log('email invalid');
            } else {
                // Correct
                $("#form_email").removeClass("invalid");
                console.log('email valid');
            }
        }
        valEmail();

    });

2 个答案:

答案 0 :(得分:1)

根据我的评论:

  

看到var email是一个jQuery对象,你应该尝试使用email.val()来获取   它的价值。

如果您使用email.val(),我会this Fiddle显示它有效。

if (!emailFilter.test(email.val())) {...

答案 1 :(得分:1)

jquery Dom对象没有属性value

使用此

$("#form_email").val();

而不是

$("#form_email").value;

希望这会有所帮助......

相关问题