验证电子邮件地址

时间:2013-08-29 17:13:41

标签: javascript html html5

我正在尝试创建一个表单,用于验证是否已输入电子邮件地址。不一定检查其有效性,但基本上是sakjfsfksldjf@email.com。我想知道如何在PURE JavaScript和没有RegEx中做到这一点。

    <!DOCTYPE html>

    <html lang="en" xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta charset="utf-8" />
        <title>Test File</title>
    </head>
        <script>
            function submitForms() {
                email_format = document.getElementById('email_input')       // want to return T or F
                if (email_format) {
                    //print email successful
                }
                else {
                   //print error message
                }         
        </script>

    <body>

        <form>
            Email:            
            <input type ="email" id ="email_input" />
        </form>

        <button type = "button" onclick = "submitForms;"> Submit All!
        </button>
    </body>
    </html>

3 个答案:

答案 0 :(得分:1)

这已经得到了很多回答。这是一个很好的功能,可以测试有效的电子邮件格式,并且阅读起来并不是太棘手,也不是太严格。

function IsEmail(email) {
    var regex = /^([a-zA-Z0-9_.+-])+\@(([a-zA-Z0-9-])+\.)+([a-zA-Z0-9]{2,4})+$/;
    return regex.test(email);
}

Per:Email validation using jQuery

答案 1 :(得分:1)

这是以前回答的正则表达式答案。非常好。

function validateEmail(email) { 
    var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\
".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA
-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
    return re.test(email);
} 

致谢:https://stackoverflow.com/a/46181/295264

然而,验证电子邮件地址的唯一好处是发送确认电子邮件并回复。

答案 2 :(得分:1)

我认为你正在寻找这个:

 function IsEmail(email) {
 var regex = /^([a-zA-Z0-9_.+-])+\@(([a-zA-Z0-9-])+\.)+([a-zA-Z0-9]{2,4})+$/;
 return regex.test(email);
}

在此处找到:Email validation using jQuery