繁体   English   中英

如何比较输入文本中的两个值?

[英]How to compare two values from input text?

我的代码有什么问题? 即使我给出了正确的答案,0414 也不会发出真正的警报。 只会出现假警报。

 var answer = String(document.getElementById('Properdate').value); var rightanswer = '0414';
 <input id="Properdate" type="text"> <input type="submit" value="submit" onclick="if(answer === rightanswer){ alert('good'); } else { alert('Try again');}" >

我认为这是因为您仅在页面加载时检索值,当调用它的事件使用存储在 answer 中的值时,这是它在页面加载时保存的值。

<input id="Properdate" type="text">
<script>
var rightanswer= '0414';
</script>
<input type="submit" value="submit" onclick="
var answer = String(document.getElementById('Properdate').value);
if(answer === rightanswer){
 alert('good');
}
else{
alert('Try again');}"
 >

应该与此合作

将代码作为 onclick 放在按钮上不是一个好主意! 我做了一个例子,希望对你有用。

例子:

 document.getElementById('sbmt').addEventListener('click', submitFunc); function submitFunc() { var answer = document.getElementById('Properdate').value; var rightanswer = '0414'; if (answer === rightanswer) { alert('good'); } else { alert('Try again'); } }
 <input id="Properdate" type="text"> <input id="sbmt" type="submit" value="submit">

尝试使用按钮标签,因为您没有提交表单。 给它一个 ID,这样你就可以从你的 JS 文件中引用它。

HTML

<input id="properdate" type="text">
<button id="submit" type="button">Submit</button>

来自您的 JS 文件或标签。 “let”关键字允许您在范围内处理变量,您可以声明一次并在不同的块中使用不同的值。

选择您的“提交”按钮元素并使用“addEventListener()”而不是 onclick 属性。 这不会像“onclick”那样覆盖现有的事件处理程序。 从那里,确保您使用了正确的事件,在这种情况下,“单击”并创建一个函数来执行您需要的任何操作。 使用您的 if 子句并尽量保持简洁。 继续努力吧,伙计!

JS

<script>
    let answer = document.getElementById('properdate');
    let rightanswer = '0414';
    let submit = document.getElementById('submit');

    submit.addEventListener('click', function(){
        if(answer.value === rightanswer) {
            alert('Good');
        } else {
            alert('Try again');
        }
    });
</script>

暂无
暂无

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

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