我已成功尝试在表格中添加所有单元格编号。我想要做的是添加将要检查的单元格(使用复选框)。 我想用JavaScript
来做/ 这里是代码 /
<html>
<head>
</head>
<body>
<form name="addValue">
<table id="countit" border="1px">
<tr>
<td><input type="checkbox" name="choice"/></td>
<td>Some value</td>
<td>Some value</td>
<td class="count-me">12</td>
</tr>
<tr>
<td><input type="checkbox" name="choice"/></td>
<td>Some value</td>
<td>Some value</td>
<td class="count-me">2</td>
</tr>
<tr>
<td><input type="checkbox" name="choice"/></td>
<td>Some value</td>
<td>Some value</td>
<td class="count-me">17</td>
</tr>
</table>
</form>
<script language="javascript" type="text/javascript">
function myFunction()
{
var tds = document.getElementById('countit').getElementsByTagName('td');
var sum = 0;
for(var i = 0; i < tds.length; i ++) {
if(tds[i].className == 'count-me'){
sum += isNaN(tds[i].innerHTML) ? 0 : parseInt(tds[i].innerHTML);
}
}
document.getElementById('countit').innerHTML += '<tr><td>' + sum + '</td><td>total</td></tr>';
}
</script>
<button onclick="myFunction()">Click me</button>
</body>
</html>
答案 0 :(得分:0)
使用jQuery
function myFunction(){
var sum = 0;
$('#countit tr input[name=choice]:checked').each(i, elmt){
sum += parseInt($(elmt).closest('tr').find('.count-me').text());
};
}
答案 1 :(得分:0)
只修改JS你可以做那样的事情
myFunction = function()
{
var tds = document.getElementsByName('choice');
var values = document.getElementsByClassName('count-me');
var sum = 0;
for(var i = 0; i < tds.length; i ++) {
if(tds[i].checked){
sum+= parseInt(values[i].innerHTML);
}
}
document.getElementById('countit').innerHTML += '<tr><td>' + sum + '</td><td>total</td></tr>';
}
https://jsfiddle.net/79yf5to4/
按名称搜索而不是元素td。如果你想按元素搜索,你必须按行搜索,然后按照td。
搜索