how to sum two numbers from input tag?(如何将输入标签中的两个数字相加?)
问题描述
可能重复:
如何将两个字符串像数字一样相加?
我写了一个简单的 JavaScript 代码,我想使用两个输入框并从两个值中添加数字.这是代码,我看到的结果是 1520 而不是 35.
I wrote a simple JavaScript code and I want to use two input box and add numbers from the two value. Here's the code, and I see the result 1520 instead of 35.
我该如何解决?
n1 <input type = "number" id = "n1" value=15 />
n2 <input type = "number" id = "n2" value=20 />
<p>Sum?</p>
<button onclick="sum()">Try it</button>
<p id="demo2">Result?? </p>
<script type="text/javascript">
function sum()
{
var fn, ln;
fn = document.getElementById("n1").value;
ln = document.getElementById("n2").value;
result = (fn+ln);
document.getElementById("demo2").innerHTML = result;
}
</script>
推荐答案
使用 parseInt()
或 parseFloat()
;您遇到的问题是您连接两个字符串,而不是添加两个数字.parseInt()
(假设它找到一个实数)通过将字符串转换为数字来解决该问题:
Use parseInt()
, or parseFloat()
; the problem you were experiencing is that you were concatenating two strings, not adding two numbers. parseInt()
(assuming that it finds a real number) addresses that issue by converting the string to a number:
function sum()
{
var fn, ln, result;
fn = parseInt(document.getElementById("n1").value, 10);
ln = parseInt(document.getElementById("n2").value, 10);
result = (fn+ln);
document.getElementById("demo2").innerHTML = result;
}
出现在value
之后的, 10
是基数,它确保返回的数字(如果有的话)是哪个基数.
The , 10
that appears after the value
is the radix, which ensures which number-base the returned number (if any) will be.
还要注意,result
变量也应该在函数中声明,以避免污染全局范围(并可能在其他地方与其他变量产生问题).
Also note that the result
variable should be declared within the function as well, to avoid polluting the global scope (and possibly creating problems with other variables elsewhere).
参考资料:
parseFloat()
一个>.parseInt()
一个>.
这篇关于如何将输入标签中的两个数字相加?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:如何将输入标签中的两个数字相加?
基础教程推荐
- 直接将值设置为滑块 2022-01-01
- 如何使用JIT在顺风css中使用布局变体? 2022-01-01
- html表格如何通过更改悬停边框来突出显示列? 2022-01-01
- Vue 3 – <过渡>渲染不能动画的非元素根节点 2022-01-01
- Electron 将 Node.js 和 Chromium 上下文结合起来意味着 2022-01-01
- 如何使用TypeScrip将固定承诺数组中的项设置为可选 2022-01-01
- Chart.js 在线性图表上拖动点 2022-01-01
- 我可以在浏览器中与Babel一起使用ES模块,而不捆绑我的代码吗? 2022-01-01
- 用于 Twitter 小部件宽度的 HTML/CSS 2022-01-01
- 自定义 XMLHttpRequest.prototype.open 2022-01-01