繁体   English   中英

Javascript-简单登录重定向

Javascript - Simple Login Redirection

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

正在阅读一些JavaScript教程,并试图制作一个简单的登录系统。 为此,我使用了以下代码。 警报行正确执行,但重定向行似乎未产生任何结果。

问题:如何使它起作用? 代码有什么问题?

注意:我知道这不是安全的登录系统。 当满足不同条件时,我只需要它即可正确重定向。

我还尝试了重定向行的不同语法(删除引号,括号等)。 它们似乎都不起作用……以防万一这只是语法错误。

码:

<form name="loginForm" onsubmit="loginCheck()" method="post">
    <input type="text" name="userName"><br>
    <input type="text" name="passWord"><br><br>
    <input type="submit" value="Login">
</form>

<script>
function loginCheck() {
    var usr=document.loginForm.userName.value;
    var psw=document.loginForm.passWord.value;
    var username="admin";
    var password="admin";
    if ((usr==username) && (psw=password)) {
        alert ("True Info");
        window.location.href ("http://www.google.com");
        return true;
    }
    else {
        alert ("False Info");
        window.location.href ("http://www.google.com");
        return false;
    }
}
</script>
3 个回复

存在三个问题:

  1. href是一个字符串,而不是一个函数,因此将其作为函数调用将抛出一个exception并且中止脚本
  2. 您不会从事件处理程序中返回false ,因此表单将提交并覆盖您对location所做的所有操作
  3. 您有一个作业要尝试进行比较

要解决此问题:

  1. 为location 分配一个值: location = "http://www.google.com/";
  2. 从事件处理程序返回: onsubmit="return loginCheck();"
  3. 注意在哪里使用===

请注意,固有事件属性是我们在90年代编写JavaScript的方式。 编码实践已得到改进,现在我们可以使用不引人注目的JavaScript分离问题

 function loginCheck(event) { var usr = this.elements.userName.value; var psw = this.elements.passWord.value; var username = "admin"; var password = "admin"; if ((usr == username) && (psw == password)) { alert("True Info - submitting form"); } else { alert("False Info - going to Google"); location = "http://www.google.com"; event.preventDefault(); } } document.getElementById('loginForm').addEventListener('submit', loginCheck); 
 <form id="loginForm" method="post"> <input type="text" name="userName"> <br> <input type="text" name="passWord"> <br> <br> <input type="submit" value="Login"> </form> 


另外,请注意,尝试完全在客户端进行身份验证是愚蠢的事情。 它可以用作基本事件处理的示例,但切勿实际尝试。

这是一个问题:

if ((usr==username) && (psw=password)) {

注意单=符号吗? 这意味着您正在分配而不是进行比较。

if ((usr==username) && (psw==password)) {

更改为上述内容,然后查看是否可行。

只需使用:

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

它是一个对象,而不是一个函数。

2 Javascript-重定向问题

我有此脚本可以打印页面,效果很好。 但是,脚本运行后,浏览器将重定向到文件夹根目录: 我该如何阻止这种情况发生? 我要保留在当前页面上! 我无法在Apache或IIS远程服务器上使用此功能。 页面是用PHP编写的。 单击按钮后调用Javascript。 按下后,将显示 ...

3 简单的JavaScript登录,重定向到用户页面(多个用户)[关闭]

我的学校下周要进行5天的html挑战,我正在练习我的想法, 要讲到重点, 我想使用支持多个用户的外部javascript脚本制作登录系统,并且当这两个登录表单在代码的特定部分有效时,它将重定向到用户页面:我设置了两个输入: 可以随意对此代码进行任何调整,并且我不希望在该项目中 ...

4 PHP和JavaScript-重定向到动态URL

只是一个简单的问题。 目前,我有一个登录脚本,该脚本重定向到dashboard.php,用户可以在其中单击按钮以检索预选当前月份和年份的Google Analytics(分析)统计信息。 2011年5月的网址是: dashboard.php?month=May&amp;year=20 ...

5 JavaScript-如果密码错误,则重定向到其他页面

我想要的是使用另一个脚本替换“ alert('那是正确的!')”,它可以使其直接打开网页,而不是先发出警报。 注意:该脚本用于打开带有询问密码的页面时,我只想在密码正确时它将继续打开页面,而不是警告消息或打开特定页面。 因为此脚本用于模板,所以它将打开许多不同的地址。 ...

6 Javascript-处理重定向Json响应

我有一个正在使用的应用程序的小型登录表单,并且我有一个对servlet的ajax请求,该servlet重定向到新页面(登录成功后)。 因此,基本上这是理论上有效的Java类中的代码。 包含的代码要求符合JAVA CLASS: 这是javacript代码,它是按下登录按钮时调用 ...

7 JavaScript - 在重定向之前记录

我正在尝试在重定向之前发送ajax调用(用于记录目的)。 实际上,重定向是一个正确设置八位字节流和处置的下载。 因此,不会在所有浏览器(特别是chrome)上调用ajax调用。 在像IE这样的其他人。 如何确保为SURE执行调用? 这是代码: ...

8 Javascript-承诺后重定向

我正在尝试实现带有Promise的服务器调用的行为。 我想发生的是,当服务器的答复是“成功”时,我想重定向到“成功”页面,否则,如果是“失败”,我想重定向到“失败”页面。 当前的情况是没有等待响应,并且在我从服务器获得任何响应之前浏览器已经重定向,无论成功与否都没有关系。 我在 ...

9 JavaScript 登录表单重定向

我正在尝试进行简单的 javascript 登录(我知道它不安全),但登录按钮并没有将我重定向到我想要的位置。 我希望它把我重定向到“home.html”,但它把我重定向到登录页面“index.html”。 问题出在哪里? 这是我的 JavaScript 代码: 这是我的 html 代码: ...

10 正确的javascript登录重定向

我目前有一个页面,该页面受需要登录的组的保护。 如果用户未登录,则受保护的页面将重定向到登录页面。如果登录成功,如何将用户重定向回正确的页面? 目前,如果用户直接访问登录页面,我会将其硬编码到url。 我正在考虑使用history.go(-1); 但是,如果用户在访问随机网站后直接访问登 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM