Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用form代替div_Javascript_Html_Firebase_Firebase Authentication - Fatal编程技术网

Javascript 使用form代替div

Javascript 使用form代替div,javascript,html,firebase,firebase-authentication,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="

我有登录页面。我在其中使用表单。它从来都不起作用。后来我尝试了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);

    // ...
  });
}

登录表单
登录
函数登录(){
var userEmail=document.getElementById(“email_字段”).value;
var userPass=document.getElementById(“密码字段”).value;
firebase.auth(){
//在这里处理错误。
var errorCode=error.code;
var errorMessage=error.message;
警告(“错误:+errorMessage”);
// ...
});
}

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

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

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


不工作是什么意思?您的表单缺少
操作
属性。如果您使用的是JavaScript,请添加js代码。不工作并不能解释问题所在。抱歉,但“它从未工作过”并没有帮助。什么不起作用?它应该做什么?它在做什么不该做的?帮助我们帮助你!如果您将表单复制到一个干净的文件中,您将看到在完成输入并按“提交”键后,它将按原样重新加载页面。因此,表单正在运行。因为在onclick按钮中有一个login()函数,所以应该在这里发布js代码。这就是问题所在。