【发布时间】:2017-03-21 10:26:19
【问题描述】:
GPA 计算器。所以我需要将单元格[2] 和单元格[3] 相乘,然后将结果相加。但是这两个单元格都是保管箱。那么如何获取同一行的单元格 [2] 和单元格 [3] 中的 Dropbox 的 ID。注意:允许动态添加行。
function multiplyadd() {
var tbody = document.getElementById("gpatable");
var answer = 0,
answer1 = 0;
for (var i = 0; i < tbody.rows.length; i++) {
var row = tbody.rows[i + 1];
var idd = document.getElementById("gpatable").rows[i + 1].cells[2].id;
var strUser = idd.options[idd.selectedIndex].value;
// var credits = row.cells[2].childNodes[0].options[selectedIndex].value;
var credits = parseInt(strUser);
var id1 = document.getElementById(row.cells[3].childNodes[0]);
var grades = parseInt(id1);
// var grades = row.cells[3].childNodes[0].options[selectedIndex].value;
var answer1 = (Number(credits) * Number(grades)).toFixed(3);
answer = answer + answer1;
}
alert(answer);
}
<table id="gpatable" class="table col-md-8 offset-md-2">
<thead class="bg-faded">
<tr>
<th>#</th>
<th width="370px">Course Name</th>
<th>Credits</th>
<th>Grades</th>
</tr>
</thead>
<tbody>
<tr>
<th scope="row" id="one" value="1">1</th>
<td class="td"><input type="text" name="subname" class="form-control col-md-8"></td>
<td class="td">
<select onchange="updatecreditarray(this.id);" id="select_credit" class="custom-select">
<option selected>-</option>
<option value="1">1.00</option>
<option value="2">2.00</option>
<option value="3">3.00</option>
<option value="4">4.00</option>
</select>
</td>
<td class="td">
<select onchange="updategradearray(this.id);" id="select_grades" class="custom-select">
<option selected>-</option>
<option value="4">A+</option>
<option value="3.75">A</option>
<option value="3.5">A-</option>
<option value="3.25">B+</option>
<option value="3">B</option>
<option value="2.75">B-</option>
<option value="2.5">C+</option>
<option value="2.25">C</option>
<option value="2">C-</option>
<option value="0">F</option>
</select>
</td>
</tr>
</tbody>
</table>
<div class=" row col-md-8 offset-md-2" style="padding:0;">
<button title="Add course" type="button" onclick="addrow();" class="btn btn-secondary col-md-1 col-sm-5 col-xs-12" id="addcourse" name="addcourse"><i class="fa fa-plus" aria-hidden="true"></i></button>
<button title="Remove course" type="button" onclick="subrow();" class="btn btn-secondary col-md-1 col-sm-5 col-xs-12" id="subcourse" name="addcourse"><i class="fa fa-minus" aria-hidden="true"></i></button>
<button type="button" class="btn btn-secondary col-md-3 col-sm-5 col-xs-12" id="calcdown" name="addcourse">Calculate & Download <i class="fa fa-download" aria-hidden="true"></i></button>
<button type="button" onclick="calculate();" class="btn btn-primary col-md-2 offset-md-5 col-sm-4 col-xs-12" id="calc" name="addcourse">Calculate <i class="fa fa-calculator" aria-hidden="true"></i></button>
【问题讨论】:
-
提供的代码不完整。你在哪里调用你的函数
multiplyadd()?通过minimal reproducible example 并尝试更好地解释问题和您想要的输出。
标签: javascript html css calculator