JavaScript计算问题 - NaN消息

Raf*_*tos 0 javascript nan

我正在计算一个总数.我从div得到了总和值.但总的来说,而不是我得到的数字(NaN - 不是数字)

JavaScript功能:

<script type="text/javascript">
            function calculateTotal(){
                var total = document.getElementById('valor1').innerHTML*1 + document.getElementById('valor2').innerHTML*1 + document.getElementById('valor3').innerHTML*1 + document.getElementById('valor4').innerHTML*1 + document.getElementById('valor5').innerHTML*1 + document.getElementById('valor6').innerHTML*1;
                document.getElementById('total').innerHTML = total;
            }
</script>
Run Code Online (Sandbox Code Playgroud)

编辑:

我发现了错误,我在DIV中有一个结束标记,如下所示:

<center><div id="valor1"></center></div>
Run Code Online (Sandbox Code Playgroud)

变成:

<center><div id="valor1"></div></center>
Run Code Online (Sandbox Code Playgroud)

MAK*_*pon 9

您不能直接使用document.getElementById('valor1').innerHTML.你必须将其转换为数字.请试试这个.

var value = document.getElementById('valor1').innerHTML;
var number = parseFloat(value)||0;
Run Code Online (Sandbox Code Playgroud)

为每个具有数字的div innerHTML执行此操作.

var number = parseFloat(value)||0;
Run Code Online (Sandbox Code Playgroud)

如果div为空或div html无法转换为数字,上面的行将帮助您为值赋值0.