Javascript MS Edge:即使返回false,也已提交表单
我在为我为工作创建的网站创建登录表单时遇到了一个奇怪的问题。我知道这件事已经被提出过一百万次了,但我的案子只是处于边缘 原则是:我有一个带有用户名和密码的表单。提交表单时,用户和pass将在ajax中进行验证和登录(如果是,则返回错误)。如果有效,它将重定向到主用户。(简单,不是吗?) 问题是,即使表单有Javascript MS Edge:即使返回false,也已提交表单,javascript,jquery,html,ajax,Javascript,Jquery,Html,Ajax,我在为我为工作创建的网站创建登录表单时遇到了一个奇怪的问题。我知道这件事已经被提出过一百万次了,但我的案子只是处于边缘 原则是:我有一个带有用户名和密码的表单。提交表单时,用户和pass将在ajax中进行验证和登录(如果是,则返回错误)。如果有效,它将重定向到主用户。(简单,不是吗?) 问题是,即使表单有return:false,但仅在Microsoft Edge中,页面仍会刷新。它可以在Chrome、IE(甚至在文档模式10)和Firefox上运行,没有任何问题 行动守则: <!-- j
return:false
,但仅在Microsoft Edge中,页面仍会刷新。它可以在Chrome、IE(甚至在文档模式10)和Firefox上运行,没有任何问题
行动守则:
<!-- jQuery + validate plugins are already loaded -->
<form id="loginform" method="post" class="">
<div class="navbar-login panel">
<div class="panel-heading">
<h4 class="panel-title">Connexion au cours</h4>
</div>
<div class="panel-body">
<div id="login-warning"></div>
<div class="form-group col-md-12">
<input class="form-control" style="width: 100%;" placeholder="Adresse email" name="LOGIN_EMAIL" type="email">
</div>
<div class="form-group col-md-12">
<input class="form-control" style="width: 100%;" placeholder="Mot de passe" name="LOGIN_PASSWORD" type="password">
</div>
</div>
<div class="panel-heading text-right" style="display: table;width: 100%;">
<button type="submit" style="float: right;display: inline-block;" class="btn btn-info">Connexion</button>
</div>
</div>
</form>
有人能帮忙吗?谢谢您以后的回答。当您添加事件参数并调用
preventDefault
时,运气好吗<代码>提交(函数(事件){…event.preventDefault();})否,已测试:(您在控制台中看到任何错误吗?请注意,如果提交处理程序中发生异常,将无法访问返回false
。您可以在返回false
之前添加一些控制台。记录,并检查是否执行了它。没有错误。但我在同一页面中通过ajax提交了另一个表单,这一个工作ks(使用非常类似的代码)你有没有发现这个问题?我遇到了完全相同的问题。除了edge之外,其他浏览器都可以工作。当你添加事件参数并调用preventDefault
时,运气如何?submit(函数(事件){……event.preventDefault();})
没有,已经测试过:(您在控制台中看到任何错误吗?请注意,如果提交处理程序中发生异常,将无法访问返回false
。您可以在返回false
之前添加一些控制台。记录,并检查是否执行了它。没有错误。但我在同一页面中通过ajax提交了另一个表单,这一个工作ks(使用非常类似的代码)你有没有发现这个问题?我遇到了完全相同的问题。除了edge之外,其他浏览器都能正常工作。
$("#loginform").validate({
debug: false,
rules: {
LOGIN_EMAIL: {
required: true,
email: true
},
LOGIN_PASSWORD: {
minlength: 6
}
}
});
$("#loginform").submit(function(e){
var f = $(this);
if(f.valid()){
$.ajax({
url: "req/ajx_login.php",
type:"POST",
cache: false,
async: false,
data: f.serialize(),
success: function(data, status, xhr){
// data is "success" if successed, anything else if failed
if(data == "success"){
location = "/cours";
}else{
$("#login-warning").html(data);
}
}
});
}
return false;
});