创建登录并验证电子邮件地址

时间:2016-06-22 10:54:08

标签: javascript html

我想在JavaScript中创建一个登录页面,这是错误的代码。我想要的是,当我输入错误的电子邮件地址时,它应该在我将其留空时显示警告,然后显示警报。



function check(form) {
  if (form.email.value == "id@gmail.com") {
    alert("correct username")
  } else if (form.email.value == "") {
    alert("blank username")
       }

    var email = document.getElementById('email');
    var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;

    if (!filter.test(email.value)) {
      alert('Please provide a valid email address');
      email.focus;
      return false;
    }
  } else if (form.pswrd.value == "123") {
    alert("correct details")
  } else if (form.pswrd.value == "") {
    alert("blank password")
  }
}

<h1>Login </h1>
<form name="login">
  Username <input type="text" name="email"/>
  Password <input type="password" name="pswrd"/>
  <input type="button" onclick="check(this.form)" value="Login"/>
  <input type="reset" value="reset"/>
</form>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:1)

<强>错误:

  1. 您不应在JavaScript中使用<script>标记。它们无效。
  2. 您尚未向id="email"提供input。所以这不起作用。
  3. 添加else部分以进行电子邮件验证。
  4. password支票与email支票if...else区分开。
  5. 工作代码段

    function check(form) {
      if (form.email.value == "id@gmail.com") {
        alert("correct username")
      } else if (form.email.value == "") {
        alert("blank username")
      } else if (form.email.value != "") {
        var email = document.getElementById('email');
        var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
    
        if (!filter.test(email.value)) {
          alert('Please provide a valid email address');
          email.focus;
          return false;
        }
      }
      if (form.pswrd.value == "123") {
        alert("correct details")
      } else if (form.pswrd.value == "") {
        alert("blank password")
      }
    }
    <h1>Login </h1>
    <form name="login">
      Username <input type="text" name="email" id="email" />
      Password <input type="password" name="pswrd"/>
      <input type="button" onclick="check(this.form)" value="Login" />
      <input type="reset" value="reset"/>
    </form>