Javascript 一个简单的JS+;HTML脚本对我来说工作不正常

Javascript 一个简单的JS+;HTML脚本对我来说工作不正常,javascript,html,prompt,Javascript,Html,Prompt,我有以下代码: <div style="text-align: center;margin: auto;display: block;padding: 20px;width: 200px;"> <button onclick="usernamePrompt()">Click to enter the username</button> <button onclick="passwordPrompt()">Click

我有以下代码:

<div style="text-align: center;margin: auto;display: block;padding: 20px;width: 200px;">
        <button onclick="usernamePrompt()">Click to enter the username</button>
        <button onclick="passwordPrompt()">Click to enter the password</button>
        <button onclick="verify()">Verify here</button>
    </div>
    <div style="text-align: center;margin: auto;display: block;padding: 20px;">
        <p style="text-align: center;font-size: 20px;" id="verifyPara"></p>
    </div>
    <script type="text/javascript">
        function usernamePrompt () {
            window.username = prompt('Enter username:');
        };
        function passwordPrompt () {
            window.password = prompt('Enter password:');
        };
        function verify (username,password) {
            if (username === "immoral" && password ==="koala") {
                document.getElementById('verifyPara').innerHTML='Success!';
            } else {
                document.getElementById('verifyPara').innerHTML='Fail!';
                delete username;
                delete password;
            };
        }
    </script>

单击以输入用户名
单击以输入密码
在这里验证

函数usernamepropt(){ window.username=prompt('输入用户名:'); }; 函数passwordPrompt(){ window.password=prompt('输入密码:'); }; 功能验证(用户名、密码){ 如果(用户名==“不道德”和密码==“考拉”){ document.getElementById('verifyPara').innerHTML='Success!'; }否则{ document.getElementById('verifyPara').innerHTML='Fail!'; 删除用户名; 删除密码; }; }
当然,每当我尝试这段代码时,我都会在两个“提示符”中提交数据。我在if-else语句中使用此数据,如果提交的用户名和密码是所需的,则应生成“成功”,否则应生成“失败”。

问题是它从不产生“成功”,而且总是“失败”。代码怎么了?请帮忙。谢谢

既然您全局声明了变量,您只需检查它们即可

function verify() {
    if (window.username === "immoral" && window.password === "koala") {
        document.getElementById('verifyPara').innerHTML = 'Success!';
    } else {
        document.getElementById('verifyPara').innerHTML = 'Fail!';
        delete username;
        delete password;
    };
}

由于您全局声明了变量,因此只需检查它们即可

function verify() {
    if (window.username === "immoral" && window.password === "koala") {
        document.getElementById('verifyPara').innerHTML = 'Success!';
    } else {
        document.getElementById('verifyPara').innerHTML = 'Fail!';
        delete username;
        delete password;
    };
}

首先我要说的是,不能用javascript提示符将密码作为文本字段。对于您的解决方案,可以设置两个隐藏字段——一个是用户名,另一个是密码。设置提示后的值。比较时,从隐藏值进行比较。 我再说一遍,这不是现实生活中的做法。您可以查看它以更好地了解javascript的工作原理。
请参阅下面的代码:

<div style="text-align: center;margin: auto;display: block;padding: 20px;width: 200px;">
        <button onclick="usernamePrompt()">Click to enter the username</button>
        <button onclick="passwordPrompt()">Click to enter the password</button>
        <button onclick="verify()">Verify here</button>
    </div>
    <div style="text-align: center;margin: auto;display: block;padding: 20px;">
        <p style="text-align: center;font-size: 20px;" id="verifyPara"></p>
    </div>
    <input type="hidden" id="userName"/>
    <input type="hidden" id="password"/>
    <script type="text/javascript">

        function usernamePrompt () {
            var username = prompt('Enter username:');
            document.getElementById('userName').value= username;
        };
        function passwordPrompt () {
            var password = prompt('Enter password:');
            document.getElementById('password').value = password;
        };
        function verify ( ) {
            if (document.getElementById('userName').value == "immoral" && document.getElementById('password').value =="koala") {
                document.getElementById('verifyPara').innerHTML='Success!';
            } else {
                document.getElementById('verifyPara').innerHTML='Fail!';


            };
        }
    </script>

单击以输入用户名
单击以输入密码
在这里验证

函数usernamepropt(){ var username=prompt('输入用户名:'); document.getElementById('userName')。value=userName; }; 函数passwordPrompt(){ var password=prompt('输入密码:'); document.getElementById('password')。value=password; }; 函数验证(){ if(document.getElementById('userName')。值==“不道德”和document.getElementById('password')。值==“考拉”){ document.getElementById('verifyPara').innerHTML='Success!'; }否则{ document.getElementById('verifyPara').innerHTML='Fail!'; }; }
首先我要说的是,您不能使用javascript提示符将密码作为文本字段。对于您的解决方案,您可以设置两个隐藏字段——一个用于用户名,另一个用于密码。设置提示后的值。比较时,从隐藏值进行比较。 我再说一遍,这不是现实生活中的做法。您可以查看它以更好地了解javascript的工作原理。
请参阅下面的代码:

<div style="text-align: center;margin: auto;display: block;padding: 20px;width: 200px;">
        <button onclick="usernamePrompt()">Click to enter the username</button>
        <button onclick="passwordPrompt()">Click to enter the password</button>
        <button onclick="verify()">Verify here</button>
    </div>
    <div style="text-align: center;margin: auto;display: block;padding: 20px;">
        <p style="text-align: center;font-size: 20px;" id="verifyPara"></p>
    </div>
    <input type="hidden" id="userName"/>
    <input type="hidden" id="password"/>
    <script type="text/javascript">

        function usernamePrompt () {
            var username = prompt('Enter username:');
            document.getElementById('userName').value= username;
        };
        function passwordPrompt () {
            var password = prompt('Enter password:');
            document.getElementById('password').value = password;
        };
        function verify ( ) {
            if (document.getElementById('userName').value == "immoral" && document.getElementById('password').value =="koala") {
                document.getElementById('verifyPara').innerHTML='Success!';
            } else {
                document.getElementById('verifyPara').innerHTML='Fail!';


            };
        }
    </script>

单击以输入用户名
单击以输入密码
在这里验证

函数usernamepropt(){ var username=prompt('输入用户名:'); document.getElementById('userName')。value=userName; }; 函数passwordPrompt(){ var password=prompt('输入密码:'); document.getElementById('password')。value=password; }; 函数验证(){ if(document.getElementById('userName')。值==“不道德”和document.getElementById('password')。值==“考拉”){ document.getElementById('verifyPara').innerHTML='Success!'; }否则{ document.getElementById('verifyPara').innerHTML='Fail!'; }; }
错误背后的原因是,您没有将参数传递给
验证功能。只要传递参数,它就会工作

函数usernamepropt(){
window.username=prompt('输入用户名:');
};
函数passwordPrompt(){
window.password=prompt('输入密码:');
};
功能验证(用户名、密码){
如果(用户名==“不道德”和密码==“考拉”){
document.getElementById('verifyPara').innerHTML='Success!';
}否则{
document.getElementById('verifyPara').innerHTML='Fail!';
删除用户名;
删除密码;
};
}

单击以输入用户名
单击以输入密码
在这里验证


错误背后的原因是,您没有将参数传递给
验证功能。只要传递参数,它就会工作

函数usernamepropt(){
window.username=prompt('输入用户名:');
};
函数passwordPrompt(){
window.password=prompt('输入密码:');
};
功能验证(用户名、密码){
如果(用户名==“不道德”和密码==“考拉”){
document.getElementById('verifyPara').innerHTML='Success!';
}否则{
document.getElementById('verifyPara').innerHTML='Fail!';
删除用户名;
删除密码;
};
}

单击以输入用户名
单击以输入密码
在这里验证


您总是出现“失败”的原因是t