【问题标题】:Javascript compare two text fieldsJavascript比较两个文本字段
【发布时间】:2016-11-23 19:42:45
【问题描述】:

我正在尝试将两个文本字段与 Javascript 进行比较。但是其中一个必须比另一个具有更大的值,例如 5 = 4。

我不知道为什么。

        <script>

        document.getElementById("text1").addEventListener("keydown", testpassword2);

        function testpassword2() {

        var text1 = document.getElementById("text1");
        var text2 = document.getElementById("text2");

        if(text1.value == text2.value){  
        text2.style.borderColor = "#2EFE2E";
        }
        else{
        text2.style.borderColor = "red";
        }} 

       </script>

【问题讨论】:

  • 请更好地解释什么不起作用或预期的行为是什么
  • 在此处或 Stack Overflow sn-p 中发布代码。
  • 我编辑了帖子.. 或者你可以查看这个jsfiddle.net/rm632Lqx

标签: javascript


【解决方案1】:

您的代码存在一些问题:

  • 您在第一个输入上只有一个事件侦听器。您还需要将事件侦听器添加到第二个输入。
  • keydown 上的值不会包含与keyup 上相同的值。您需要keyup 才能跟上用户的输入。

工作小提琴here.

document.getElementById("text1").addEventListener("keyup", testpassword2);
document.getElementById("text2").addEventListener("keyup", testpassword2);

function testpassword2() {
  var text1 = document.getElementById("text1");
  var text2 = document.getElementById("text2");
  if (text1.value == text2.value)
    text2.style.borderColor = "#2EFE2E";
  else
    text2.style.borderColor = "red";
}
<body>                
<input type="text" id="text1" size="30">
<input type="text" id="text2" size="30">   
</body>

【讨论】:

  • @RzeIMz 很高兴它按您的预期工作。您能否将我的答案标记为正确?
猜你喜欢
  • 1970-01-01
  • 2011-10-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-01
  • 2018-12-03
  • 2011-10-30
相关资源
最近更新 更多