如何使.val()。toLowerCase()正常工作?

时间:2013-09-07 15:03:08

标签: jquery if-statement input

我很难用jquery来显示错误。我想确认用户输入的电子邮件。基本上,如果用户没有正确填写字段,我希望显示错误。

我希望用户使用相同的输入文本填充这两个字段。如果用户没有,我想在“email_confirm”输入下显示错误“电子邮件不一样”。如果是,我想隐藏此错误。

这是我制作的小提琴: http://jsfiddle.net/5ZjwW/1/

这是我的jquery代码:

 $("#email").blur(function ()
{
    if ($("#email").val() == "")
    {
        $("#err1_email").removeClass("hidden");
        $("#err2_email").addClass("hidden");
    }
    else
    {
        $("#err1_email").addClass("hidden");
        if (!emailregex.test($('#email').val()))
        {
            $("#err2_email").removeClass("hidden");
        }
        else
        {
            $("#err2_email").addClass("hidden");
        }
    }
})
$("#email_confirm").blur(function ()
    {
        if ($("#email_confirm").val() == "")
        {
            $("#err1_confirmemail").removeClass("hidden");
        }
        else
        {
            $("#err1_confirmemail").addClass("hidden");
            if ($("email_confirm").val().toLowerCase() != $("email").val().toLowerCase())
            {
                $("#err2_confirmemail").removeClass("hidden");
            }
            else
            {
                $("#err2_confirmemail").addClass("hidden");
            }
        }
    })

非常感谢。

2 个答案:

答案 0 :(得分:1)

你的id选择器缺少`if condition

中的前缀#
if ($("#email_confirm").val().toLowerCase() != $("#email").val().toLowerCase())

还缺少emailregex

演示:Fiddle

答案 1 :(得分:1)

你在选择器中遗漏了一些#,所以他们没有选择任何东西;尝试:

if ($("#email_confirm").val().toLowerCase() != $("#email").val().toLowerCase())

在小提琴中缺少emailregex

演示:http://jsfiddle.net/IrvinDominin/5ZjwW/2/