首页 > 解决方案 > 如何比较两个变量值?

问题描述

我正在制作一个密码应用程序,您首先在其中创建密码并将其保存到变量中。一旦变量具有值,您就可以输入密码。如果用户错了三遍,我想隐藏输入框并显示一条消息。到目前为止它正在工作,但它没有比较两个变量。这是我的代码:

<p id='password'></p>

<input type='password' title='enter your password'>
<input type="submit" onclick='passwords__()'>

<button onclick='savePassword()'>
Save Your New Password
</button>

<script>
var times = 0;
var input = document.getElementsByTagName('input')[0];
var passwords = document.getElementsByTagName('input')[0].value;
var buttons = document.getElementsByTagName('input')[1];
var buttons2 = document.getElementsByTagName('button')[0];

function passwords__() {
    times++;
    if (times === 3) {
        input.style.display = 'none';
        document.getElementById('password').innerHTML = 'You can\'t enter your password because you have not enter the right one for three times';
    }
    if (input.value === passwords) {
        alert('You\'re loged in');
    }

}
</script>

<script>
function firstCall() {
    buttons.style.display = 'none';
}
firstCall();
</script>

<script>
function savePassword() {
    buttons.style.display = 'block';
    buttons2.style.display = 'none';
}
</script>

标签: javascript

解决方案


你错过了什么

  • 您正在将第二个输入与空字符串进行比较,因为您在单击事件之前正在运行它

有一些事情你可以在这里改进。

  • 保存后密码消失
  • 登录时计数为 0

var times = 0;
var input = document.getElementsByTagName('input')[0];
var pass1;
var button = document.getElementsByTagName('input')[1];
var buttons2 = document.getElementsByTagName('button')[0];
function passwords__(){
times++;
pass2 = input.value;
if(times === 3 && pass2 !== pass1){

input.style.display = 'none';
document.getElementById('password').innerHTML = 'You can\'t enter your password because you have not enter the right one for three times';
}
console.log(pass1)
if(pass2 == pass1){
alert('You\'re loged in');
times = 0 ;
}

}


function firstCall(){
button.style.display = 'none';
}

firstCall();

function savePassword(){
pass1 = input.value;

input.value = '';

button.style.display = 'block';
buttons2.style.display = 'none';
}
<p id='password'>
</p>
<input type='password' title='enter your password'>
<input type="submit" onclick='passwords__()'>
<button onclick='savePassword()'>
Save Your New Password
</button>


推荐阅读