当前位置: 首页 > 知识库问答 >
问题:

来自输入字段的公式

轩辕乐邦
2023-03-14

我有三个输入,我想添加,当我把我的第一个数字"5"console.log显示"0"下一个输入字段我输入"2"这将console.log第一个输入字段的数字"5"第三个我输入我在“7”console.log看到的“5”。

为什么会发生这种情况,我该如何解决它。

            <input id="roundOne" onkeypress="obtainScoreOne()" type="text">                
            <input id="roundTwo" onkeypress="obtainScoreOne()" type="text">                
            <input id="roundThree" onkeypress="obtainScoreOne()" type="text">

JavaScript.

             function mathScore(x, y, z){
                   return (x + y + z);
             }
             function obtainScoreOne() {    
                 //collect data
                 let n1, n2, n3, sum;
                    n1 = Number(document.querySelector('#roundOne').value);
                    n2 = Number(document.querySelector('#roundTwo').value);
                    n3 = Number(document.querySelector('#roundThree').value);        
                    sum = mathScore(n1, n2, n3);        
                 //Display result
                    console.log(sum);                     
              }

共有2个答案

锺高翰
2023-03-14

在设置输入值之前触发了onkeypress,请尝试onkeypup

function mathScore(x, y, z) {
  return (x + y + z);
}

function obtainScoreOne() {
  //collect data
  let n1, n2, n3, sum;
  n1 = Number(document.querySelector('#roundOne').value);
  n2 = Number(document.querySelector('#roundTwo').value);
  n3 = Number(document.querySelector('#roundThree').value);
  sum = mathScore(n1, n2, n3);
  //Display result
  console.log(sum);
}
<input id="roundOne" onkeyup="obtainScoreOne()" type="text">
<input id="roundTwo" onkeyup="obtainScoreOne()" type="text">
<input id="roundThree" onkeyup="obtainScoreOne()" type="text">
林俊英
2023-03-14

我希望这有帮助

function obtainScoreOne(n1, n2, n3) {
  var n1 = parseInt(document.querySelector('#roundOne').value);
  var n2 = parseInt(document.querySelector('#roundTwo').value);
  var n3 = parseInt(document.querySelector('#roundThree').value);

  var sum;
  sum = n1 + n2 + n3;
  console.log(sum);
  return sum;                                          
}
<input id="roundOne" onkeyup="obtainScoreOne()" type="number" value="0">            
<input id="roundTwo" onkeyup="obtainScoreOne()" type="number" value="0">          
<input id="roundThree" onkeyup="obtainScoreOne()" type="number" value="0">
 类似资料:
  • 问题内容: 我的扩展程序具有一个包含项目的上下文菜单。我想要做的是:右键单击html元素(例如,输入或文本区域),然后选择并单击菜单中的某个项目时- 由扩展名定义的某些值将输入到输入中。 目前,我已经意识到。 简单的输入就可以了。 当存在具有自定义事件处理的输入(例如日历或电话输入或货币输入)时,问题就开始了,这些输入以某种方式转换了用户输入。 由于我直接在元素上设置了一个值-省略了处理逻辑,这会

  • 每次鼠标左键单击,递增,因此值始终在变化。我想要显示在条目字段,但我无法实现这一点。 如何使输入字段始终更新并在?

  • 问题内容: 我在Goji框架上运行了一些东西: 我希望有人能帮助我做的是弄清楚如何提交HTML表单以将数据发送到Golang代码。 因此,如果存在一个带有name属性的输入字段,并且该属性的值是name,并且用户在其中输入名称并提交,那么在提交的表单页面上,Golang代码将打印问候,名称。 这是我能想到的: 这是我的hello.html文件: 在身体里: 如何连接到使Golang代码获取的是在表

  • 问题内容: 您是否知道是否有内置函数可以从任意对象构建字典?我想做这样的事情: 注意:它不应包含方法。仅字段。 问题答案: 请注意,Python 2.7中的最佳实践是使用新型类(Python 3不需要),即 同样,“对象”和“类”之间也存在差异。要从任意对象构建字典,只需使用即可。通常,您将在类级别声明方法,并在实例级别声明属性,因此应该没问题。例如: 更好的方法(由robert建议在注释中使用)

  • 如何在JavaScript中设置form文本字段的默认值?

  • 我有一个jTextfield,必须从JList获取输入。在FocusGaut属性上,jList应该正好出现在jTextfield下面,而在FocusLost属性上,jList应该消失。我已经做了一些编码,但我得到一个问题在它。在FocusGaut属性中,会出现jList,但单击它后,它会转到其他jTextfield的背面,该背面位于前一个TextField的下方。以下是我的代码: