gpt4 book ai didi

Javascript 密码提示错误

转载 作者:行者123 更新时间:2023-11-30 06:43:59 24 4
gpt4 key购买 nike

我似乎无法弄清楚如何纠正我遇到的 2 个问题。

这是我正在使用的代码:

function password() {
var testV = 1;
var pass1 = prompt('Please Enter The Password','');
while (testV < 2) {
if (!pass1)
history.go(-1);
if (pass1 == "default") { //password here
window.open('http://www.[redacted].com/downloads/documents/12-2011-project.psd'); //if password correct
break;
}
testV += 1;
var pass1 =
prompt('Incorrect - Please Try Again.',''); //if password incorrect
}
if (pass1 != "password" & testV == 2)
history.go(-1);
window.location = "/exit.html"; //redirects to here after success and opens download
}

我的第一个问题:单击“取消”时,它会再次提示。我只是希望它在我单击取消后简单地消失。

第二:当您单击“取消”时使用了 2 次尝试后,它会像下载一样重定向(没有激活下载,这很好。)

我做错了什么,或者需要修复什么?

此外,如果用户只按两次“确定”,则不会激活下载,但它仍会重定向。我在退出页面上留下了说明这一点。这不会打扰我,但是可以解决吗?如果不是,那对我来说很好。

已解决(12/16 @ 上午 9:30)感谢所有回答我第一个问题的人!

最佳答案

问题 1 - 如果我理解正确的话,如果用户取消你想要中止所有进一步的处理,那么你可以简单地通过更改此从 password() 函数返回:

if (!pass1) 
history.go(-1);

对此:

if (!pass1) {
history.go(-1);
return;
}

否则,如果你想留在你的函数中,说 break 而不是 return (就像你已经为正确的密码所做的那样)来退出 while 循环然后在循环后为该情况添加适当的 if 结构。

问题 2 - 如果您已经从 password() 函数返回,则不会发生重定向,如上所示。如果您试图迎合用户没有取消但密码错误的情况,那么可以这样:

if (pass1 != "password" & testV == 2)               
history.go(-1);
else
window.location = "/exit.html";

虽然我不确定你为什么要在那个时候测试 testV 的值。

注意:如果您的 JavaScript 中有密码,用户将能够通过查看您的 JS 源代码来查看密码。

关于Javascript 密码提示错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8535149/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com