首页 > 解决方案 > JS 学生电子邮件验证

问题描述

我是 Javascript 的初学者,正在寻找解决以下代码为何不起作用的解决方案。
我已经在 StackOverflow 上查看了几个教程,并相信它应该可以工作......但事实并非如此。

HTML 如下所示:

<form id="personalInfo"> 
    <h2>Email: </h2>
    <input type="text" name="Email" id="Email">
    <br>
</form> 

<input type="button" onclick = "validateEmail()">

Javascript 看起来像这样:

function validateEmail() 
{
    var reg = /^([A-Za-z0-9_\-\.]){1,}\@([A-Za-z0-9_\-\.]){1,}\.([A-Za-z]{2,4})$/;
    var address = document.forms[personalInfo].elements[Email].value;

    if (reg.test(address) == false) {
        alert ("Email not valid");
        return false;
    }
    return true;
}

根据我的帐户,如果用户输入的电子邮件地址无效,这应该会弹出一个警报。
相反,什么也没有发生。我不确定测试是否已经运行。

标签: javascriptemail-validation

解决方案


处理电子邮件输入时,将输入类型设置为email而不是text- 如下所示:

<input name="my-email" type="email" />"

然后浏览器将对输入进行验证;例如如果输入没有@现在。


推荐阅读