javascript中的实时电子邮件验证

时间:2015-05-28 11:24:14

标签: javascript jquery html

我希望javascript在我输入文本框时检查电子邮件。没有任何事情发生。

这是我的代码:

HTML

<form action="#" method="post" autocomplete="off">
        <div class="formulier">

            <label for="email">Email:</label>
            <input type="text" id="email" onchange="controle(this.value)"/>

            <div class="signup">
                <input type="button" value="Ok, Sign up!" />
            </div>

        </div>
    </form>

JAVASCRIPT

function controle(mail) {
    if (isEmail(mail.val()) == true)
        {
            alert("good");
        }

}

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

2 个答案:

答案 0 :(得分:2)

<强> EDITED

这个JS现在应该可以工作了

function controle(mail) {
    if (IsEmail(mail) == true)
        {
            alert("good");
        }

}

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

你需要确保这是在

之外定义的
$(document).ready(function(){});

请查看此答案以获取更多信息 onChange function is not defined

答案 1 :(得分:0)

你可以使用这样的事件监听器函数:

$("selector").on("keyup",function(){
  //your logic
})