gpt4 book ai didi

javascript - HTML5 表单显示 [object HTMLInputElement][object HTMLInputElement] 而不是两个数字相加的实际结果

转载 作者:行者123 更新时间:2023-11-28 05:21:37 24 4
gpt4 key购买 nike

我是 html5 和 javascript 的新手,正在使用 html5 和 javascript 编写一个简单的表单。当我在 netbeans 中按运行时,表单按预期显示在 chromo 中,但是当我输入两个数字并按添加时,而不是在结果列中显示 3[object HTMLInputElement][object改为显示 HTMLInputElement]

enter image description here

有人能告诉我为什么会这样吗?我该如何解决这个错误?

<html>
<head>
<title>TODO supply a title</title>
<link rel="shortcut icon" href=""><!--this is to be removed for production code, its been placed here because otherwise netbeans produce error message-->

<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">

<script type="text/javascript">
function addTwoNumbers() {
var firstNumber = document.getElementById("txtFirstNumber").valueOf();
var secondNumber = document.getElementById("txtSecondNumber").valueOf();

document.getElementById("txtResult").value = firstNumber + secondNumber;
}
</script>
</head>
<body>
<form>
First number<br>
<input type="text" ID="txtFirstNumber"><br>
Second number<br>
<input type="text" ID="txtSecondNumber"><br>
Result:<br>
<input type="text" ID="txtResult"><br>
<br>
<input type="button" value='add' id='btnAdd' onclick="addTwoNumbers()" />
</form>
</body>
</html>

最佳答案

Use value property as Object.prototype.valueOf() method returns the primitive value of the specified object(In your case, a DOMElement)

同时将 input-value 转换为 Number 然后进行操作,因为 Element.value 返回一个 String+ 将连接这些值而不是添加它们!

Unary plus (+) , 一元加号运算符在其操作数之前并对其求值,但尝试将其转换为数字(如果尚未转换)。

function addTwoNumbers() {
var firstNumber = +document.getElementById("txtFirstNumber").value;
var secondNumber = +document.getElementById("txtSecondNumber").value;
//Output of `valueOf()`
console.log(document.getElementById("txtFirstNumber").valueOf());
document.getElementById("txtResult").value = firstNumber + secondNumber;
}
<form>
First number
<br>
<input type="text" ID="txtFirstNumber">
<br>Second number
<br>
<input type="text" ID="txtSecondNumber">
<br>Result:
<br>
<input type="text" ID="txtResult">
<br>
<br>
<input type="button" value='add' id='btnAdd' onclick="addTwoNumbers()" />
</form>

关于javascript - HTML5 表单显示 [object HTMLInputElement][object HTMLInputElement] 而不是两个数字相加的实际结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38047612/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com