javascript - 使用表单而不是 div
问题描述
我有登录页面。我在其中使用表单。它从来没有奏效。后来我尝试了 div ,它工作正常。谁能告诉我为什么它不适用于表单。
编辑:我正在尝试使用 firebase 登录。使用表单时会出错。但使用 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);
// ...
});
}
解决方案
表单中的提交按钮将提交表单。所以,在onclick
处理程序被触发后,login
即被调用。使用提交的表单值刷新页面。
要防止按钮在登录后提交表单,请将其更改为:
<input class="btn btn-primary btn-block" onclick="login()" type="button">
推荐阅读
- vue.js - 如何使用vue cdn和vue-router实现html文件的页面转接
- r - 使用 MuMIn 进行模型平均:结果中系数名称的解释
- mapbox - MapboxGL 渲染功能问题
- sql - 如何阻止我的 Postgres recusive CTE 无限循环?
- payumoney - 在 PayU India 测试 UPI 和 Netbanking 付款方式的测试帐户是什么
- javascript - 使用来自另一个对象 VueJs 的数据
- react-native - 我的代码有什么问题。图像未在本机反应中发送上传到服务器
- c++ - 使用回调来使用来自 std::vector 的数据
- maven - Jenkins 无法保存新的或编辑现有的 Maven 项目配置
- php - 如何在 Symfony 中处理来自 html 表单的请求?