我正在尝试使用jQuery / JavaScript从表单验证密码。 验证后,我希望脚本重定向我。 但是,这当前不起作用。

注意:这只是我大学的一项练习,所以这就是代码非常简单的原因:

HTML:

!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="js/jquery-2.1.3.min.js"></script>
<script type="text/javascript" src="js/passwordCheck.js"></script>
</head>
<body>
  <form method="post" name="form1" id="form-password" action="">
    <label>Password:</label>
    <input type="password" name="password" id="password" value="" size="32" />
    <input type="submit" value="Continue" id="submit">
  </form>
</body>
</html>

JS / jQuery:

'use strict';
jQuery(document).ready(function($) { 
    $('#form-password').submit(function() { 

        var passwordVal = $('#password').val();

        if (passwordVal === "123" ) {
            $(location).attr('href', 'http://www.stackoverflow.com'); 
        }   

    });
});

我试过了:

window.location.href = "http://www.stackoverflow.com";

但这也不起作用。

我知道我需要检查提交的数据,我的问题仅在于重定向。

我怎样才能解决这个问题?

#1楼 票数:2

尝试此操作,您正在修改window.location.href属性,您确实要像这样设置window.location

$('#form-password').submit(function(e) {
    e.preventDefault();

    var passwordVal = $('#password').val();

    if (passwordVal === '123') {
        window.location = 'http://www.stackoverflow.com';
    }

});

#2楼 票数:2 已采纳

您只需要在您的提交侦听器中阻止preventDefault(),然后调用

window.location.href = "...";

当前,无论提交回调中发生了什么,该表单都会尝试过帐您的数据,而不会阻止提交表单的默认操作。

如果您选择preventDefault,则在您返回true之前,表单不会提交。

话虽如此,重定向应该在后端或由前端MVC框架执行。 无论如何,都需要提交密码数据并对照某个地方的数据库进行检查。

  ask by Georgi Stoyanov translate from so

未解决问题?本站智能推荐:

1回复

验证后表单重定向

所以我在课堂上做一个练习(没有找到其中的逻辑,但没关系)。 所有验证(如模式、必需、所有规则和消息)均使用 jQuery 验证完成,并且运行完美。 问题是:我有一个登录表单,当用户未注册时,我将用户重定向到完整的注册表单,问题是我不知道如何在注册和验证后将用户重定向到"gallery.html"检查
1回复

重定向到单独的页面时如何验证表单?

因此,我正在创建一个使用输入的值创建PDF的表单。 现在,我用于执行此操作的php已由另一个人完成。 当前,一切正常,除非您填写完表格,它将您重定向到action =“ ...”中列出的网站。 这就是代码的样子。 我想将代码重定向到我自己的“成功”页面,而不是otherdomain
1回复

需要有关jquery验证插件submitHandler重定向的帮助

我在使用jQuery验证插件的submitHandler时遇到问题。 我正在某些我无法更改的代码的范围内工作,因此我试图找到一些解决方法。 这就是我想做的...表单验证之后,当用户单击“提交”按钮时,成功将页面重定向到另一个页面。 如果我不使用jquery,则将使用locati
2回复

成功验证表单后,CodeIgniter将不会重定向

我一直在学习CodeIgniter,因为我必须从一个离开项目中期的团队成员接手一个项目。 总的来说,我的进步很好,但是这个问题让我完全陷入了困境。 就基本结构而言,我们具有以下优势: 最终发生的是用户提交表单并进行了验证。 它会捕获错误并迫使您纠正错误,但是,如果所有字段都签出
1回复

如何在重定向到另一个页面之前验证我的表单?

我正在创建一个注册表单,我希望在将用户发送到 login.html 页面之前对其进行验证。 有没有办法用这段代码做到这一点? 我希望所有这些字段都超过 2 个字符,现在在#firstName字段中写入 2 个字符就足够了,然后它会重定向。
2回复

单击通过Jquery Form Validator提交后如何重定向页面

我正在使用Jquery Form Validator验证我的网站注册表单,尽管它确实成功通过验证,但是当我单击Submit而不刷新页面时,它会刷新页面,而不是直接重定向到另一个页面。 这是我所拥有的: 我正在使用一个简单的“提交”按钮,并且尝试将链接添加到按钮中,但这根本不起作用。
2回复

在jQuery验证后,联系表单将不会提交

我无法在客户端进行表单验证并在此之后提交。 问题可能出在代码的提交部分,因为如果删除提交部分,验证部分就可以工作。 有人可以帮我吗? 这是我的代码:
1回复

验证后,jQuery验证将重定向到主页

我已经在使用JavaScript滑动div的网站中实现了Jquery Validation插件( http://jqueryvalidation.org/documentation/ )。 该插件可以正常工作,并且可以验证表单,但是在重定向到Thank you div之后,它会重定向回到主页,