【发布时间】:2018-12-17 15:46:28
【问题描述】:
(强制性的,我是新手)我想做的是......
- 获取 DIV ID 的内容(数字)。
- 将这些数字相加
- 在“at”DIV 中打印它们。
我知道它应该非常简单。但我无法理解为什么它不起作用。我想了解为什么它不起作用。我不一定要你们给我写。我想学习。这是我的代码...
var at = document.getElementById("a-total");
var ac = document.getElementById("a-coffee").innerHTML;
var ah = document.getElementById("a-hobby").innerHTML;
var af = document.getElementById("a-fundme").innerHTML;
var addopt = ac + ah + af;
function aTotal (){
if (addopt >= 0){
at.innerHTML = addopt;
} else {
console.log("tis broken");
}
}
aTotal();
它可以正确输出,但只是没有将 DIV 中的数字相加。将它们并排放置,而不是将它们加在一起。
【问题讨论】:
-
从 div 中检索到的值是字符串类型。您必须将它们转换为数字。
-
你的
ac等等都是字符串,你需要在添加之前将它们转换为数字 -
innerHTML 作为字符串返回。转换为浮点/整数,它应该可以工作。这可以通过使用 parseFloat 或 parseInt 来完成。祝你好运!
-
不要忘记检查该值是否未定义,以免出现意外。如果第一个字符不能转换为数字,则 parseInt 返回 NaN
标签: javascript html string add innerhtml