Javascript没有使用parseInt函数添加两个字符串数字
Javascript not adding two string numbers using parseInt function
我有两个<div>包含数字的部分。当数字出现在1st<单击div>,第二个内容应显示1st值的两倍<div>。
我使用了以下代码,但没有工作。
<div id="left"><a href="#" onclick="document.getElementById('right').innerHTML = (parseInt(document.getElementById('left').innerHTML) + parseInt(document.getElementById('left').innerHTML))">1</a></div>
<div id="right">1</div>
但输出是
NaN
有人能帮我输入正确的代码吗?感谢
元素#left
包含整个锚点,因此您将取回锚点的所有HTML,而不仅仅是数字,这就是为什么parseInt会吐出NaN的原因。
换句话说:
document.getElementById('left').innerHTML
将返回:
<a href="#" onclick="document.getElementById('right').innerHTML = (parseInt(document.getElementById('left').innerHTML) + parseInt(document.getElementById('left').innerHTML))">1</a>
当将其解析为整数时,它会返回NaN?
FIDDLE
你可以通过以下操作来解决:
<div id="left"><a href="#" onclick="calc(this); return false;">1</a></div>
<div id="right">1</div>
<script type="text/javascript">
function calc(elem) {
var val = parseInt(elem.innerHTML,10) * 2;
document.getElementById('right').innerHTML = val;
}
</script>
FIDDLE
相关文章:
- 计算HTML表TD中两个数字之间的百分比
- 如何使用 JavaScript 将两个数字相加
- 用于添加两个数字的javascript闭包的用法
- 通过变量在两个数字之间切换
- 在数字字符串的最后两个数字上加上小数
- 在HTML/JavaScript中减去两个数字
- 把两个数字加在一起,得到5+10=510,而不是15
- 敲除:如何对两个数字输入进行双向绑定
- 在 JavaScript 中使用最后两个数字获取年份
- jquery json 返回添加两个数字的数据
- 添加两个数字,并使用Javascript在文本框中显示结果
- 添加两个数字的JavaScript函数工作不正常
- 在JavaScript中递归地添加任意两个数字
- 检查数字是否在两个数字之间
- 添加两个数字变量将返回 NaN
- 检查两个数字是否相等的最佳方法
- Javascript将两个数字相乘返回NaN
- AngularJS:将对象中的两个数字相乘,然后得到总数
- 将逗号javascript后的最后两个数字四舍五入
- JavaScript函数将两个数字相乘,直到它们彼此相等