使用表格代替div

时间:2019-07-16 11:47:12

标签: javascript html firebase firebase-authentication

我有登录页面。我在其中使用表格。它从来没有奏效。后来我尝试了div,它工作正常。谁能告诉我为什么它不适用于表格。

编辑:我正在尝试使用Firebase登录。使用form时会出现错误。但是使用div时,它将使我登录。

<div class="login-clean" id="login_div">
  <form method="post">
    <h2 class="sr-only">Login Form</h2>
    <div class="illustration"><i class="icon ion-ios-navigate"></i></div>
    <div class="form-group"><input class="form-control" type="email" name="email" id="email_field" placeholder="Email"></div>
    <div class="form-group"><input class="form-control" type="password" name="password" id="password_field" placeholder="Password"></div>
    <div class="form-group"><button class="btn btn-primary btn-block" onclick="login()" type="submit">Log In</button></div><a href="#" class="forgot">Forgot your email or password?</a>
  </form>
</div>

function login(){
  var userEmail = document.getElementById("email_field").value;
  var userPass = document.getElementById("password_field").value;

  firebase.auth().signInWithEmailAndPassword(userEmail, userPass).catch(function(error) {
    // Handle Errors here.
    var errorCode = error.code;
    var errorMessage = error.message;

    window.alert("Error : " + errorMessage);

    // ...
  });
}

1 个答案:

答案 0 :(得分:1)

表单中的“提交”按钮将提交表单。因此,在触发onclick处理程序之后,即调用了login。使用提交的表单值刷新页面。

要防止按钮在登录后提交表单,请将其更改为:

<input class="btn btn-primary btn-block" onclick="login()" type="button">