当前在识别我的HTML / JavaScript代码中的错误时遇到问题,这阻止了我的JavaScript函数计算由表用户输入的五个数字的平均值.
将数字输入所需的单元格后,单击“计算成绩”没有任何反应.努力看问题.
var table = document.getElementById("myTable");
var rows = table.rows;
for (var i = 0; i < rows.length; i++) {
var cells = rows[i].cells;
var sum = 0;
for (var x = 0; x < cells.length; x++) {
var cell = cells[x];
sum += parseInt(cell.innerHTML);
}
var average = sum / cells.length;
rows[i].innerHTML += "
" + average + "";}
Name | ID | Assignment 1 | Assignment 2 | Assignment 3 | Assignment 4 | Assignment 5 | Final |
---|---|---|---|---|---|---|---|
Person1 | 1546396 | ||||||
Person2 | 45942544 | ||||||
Person3 | 48498465 | ||||||
Person4 | 4964984 | ||||||
Person5 | 5686846 | ||||||
Person6 | 498465 | ||||||
Person7 | 654684 | ||||||
Person8 | 6498497 | ||||||
Person9 | 8749846 | 2 | 45 | 57 | 2 | 4 | |
Person10 | 984894 |
Calculate grade
解决方法:
我编辑了小提琴:https://jsfiddle.net/StarStep/m7v1j5zz/105/
并在计算按钮上添加了一个事件列表器:
< button id =“ myFunction” class =“ button1”>计算成绩< / button>
function myFunction() {
var table = document.getElementById("myTable");
var rows = table.rows;
for (var i = 1; i < rows.length; i++) {
var cells = rows[i].cells;
var sum = 0;
var numbers = 0;
for (var x = 2; x < (cells.length -1); x++) {
var cell = cells[x];
var addme = parseInt(cell.innerHTML);
if(!isNaN(addme)) {
sum += addme;
numbers++;
}
}
var average = sum / numbers;
rows[i].cells[7].innerHTML = "
" + Math.round(average) + "";}
}
document.getElementById('myFunction').onclick = myFunction;
标签:html,javascript
来源: https://codeday.me/bug/20191111/2021505.html