Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/439.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我不知道为什么我';我一直在找NaN_Javascript - Fatal编程技术网

Javascript 我不知道为什么我';我一直在找NaN

Javascript 我不知道为什么我';我一直在找NaN,javascript,Javascript,我正在学习JavaScript。我做了一些代码,并没有问题,但当我想做新的代码,使我能够计算我的表调用,我不断得到南,我不知道为什么 这是我的JS代码 var table = document.getElementById("table"), sumVal = 0; for(var i = 1; i < table.rows.length; i++) { sumVal = sumVal + parseInt(

我正在学习JavaScript。我做了一些代码,并没有问题,但当我想做新的代码,使我能够计算我的表调用,我不断得到南,我不知道为什么

这是我的JS代码

var table = document.getElementById("table"), sumVal = 0;

            for(var i = 1; i < table.rows.length; i++)
            {
                sumVal = sumVal + parseInt(table.rows[i].cells[0].innerHTML);
            }
            console.log(sumVal);
            document.getElementById("val").innerHTML =  sumVal;

的innerHTML为空时,您需要说明原因
parseInt(“”
将返回
NaN
,您不能增加
NaN
,因此结果将是
NaN

见下文

var table = document.getElementById("table"), sumVal = 0;

            for(var i = 1; i < table.rows.length; i++)
            {
             if (table.rows[i].cells[0].innerHTML !== ""){
                sumVal +=parseInt(table.rows[i].cells[0].innerHTML);   
            }
console.log(sumVal);
document.getElementById("val").innerHTML =  sumVal; 
var table=document.getElementById(“表”),sumVal=0;
对于(变量i=1;i
填写一些数字,只需将
innerText
更改为
textContent
。 出于安全考虑,我建议您使用
textContent

Console.log()用于一般调试目的

简单的html很好用。 我不确定您是如何填写数字的,并且在填写之前和之后分别执行计算部分。 如果它总是在表格填充后执行。如果
$student->frais_铭文

var table=document.getElementById(“表”),sumVal=0;
log(parseInt(table.rows[1].cells[4].textContent));
log(parseInt(table.rows[2].cells[4].textContent));
console.log(table.rows[1].cells[4]);
console.log(table.rows[2].cells[4]);
console.log(parseInt(table.rows[1].cells[4].textContent)+parseInt(table.rows[2].cells[4].textContent));

代码
Prenome
笔名
铭文
勒斯特
付款日期
付款期间
12334
@foreach($student作为$student)
{{$student->id}
{{$student->student->student\u name}
{{$student->student->student\u last\u name}
{{$student->frais_铭文}
1234
{{$student->payment_date->Dfrais_铭文}
{{$student->Afrais_铭文}Mois
@endforeach

您的
@foreach
循环之外。调试:
console.log(i,table.rows[i].cells[0].innerHTML,parseInt(table.rows[i].cells[0].innerHTML))
我打赌这会为您清除它。document.getElementById(“val”).textcontent=sumVal像这样吗?console.log(parseInt(table.rows[1].cells[4].innerHTML)+parseInt(table.rows[2].cells[4].innerHTML));这里您选择了第4个单元格我猜单元格[0]并不总是有一个整数值,这就是为什么您会看到Nan而不是“i”需要一个值吗?当我喜欢它的时候,它工作得很好。但正如马特在上面所说的,这是因为我没有考虑到一直是空的,这就是为什么我在尝试时得到了NaNloop@justalittlecloser取决于您如何处理逻辑,只要确保输入0,如果它们是空的
val
from
for loop
var table = document.getElementById("table"), sumVal = 0;

console.log(parseInt(table.rows[1].cells[4].innerHTML) + parseInt(table.rows[2].cells[4].innerHTML));
var table = document.getElementById("table"), sumVal = 0;

            for(var i = 1; i < table.rows.length; i++)
            {
             if (table.rows[i].cells[0].innerHTML !== ""){
                sumVal +=parseInt(table.rows[i].cells[0].innerHTML);   
            }
console.log(sumVal);
document.getElementById("val").innerHTML =  sumVal;