我在一个具有以下结构的用户控件中有一个asp:table(table1)
| Col2 | Col3 | SUM
DEFAULT | 5 | 2 |
R1 | 1 | 2 |
R2 | 4 | 5 |
此处仅在aspx页面中静态创建标题,其余所有行都添加在.vb(动态)页面中。
我的要求是,在页面加载时(在客户端,在表加载后)我希望Sum列显示Col2和Col3的总和。此外,由于Col2和Col3是可编辑的,因此在单元格中的数据更改时,Sum值应自行更新。
如何找到单元格,因为我没有它们的ID,还应该调用哪些事件来显示这些值?
答案 0 :(得分:1)
<强>的JavaScript 强>:
var col2,col3;
var table = document.getElementById('tableid');
for (var i = 0; i < table.rows.length; i++) {
//2 - first cell number, 3 2nd cell number.
for (var j = 2; j <= 3; j++) {
if(j==2){//coll2
col1 += table.rows[i].cells[j].innerHTML;
}else if(j==3){//col3
col2 += table.rows[i].cells[j].innerHTML;
}
}
}
您可以这样查看:(也许这会让它看起来很简单)
表:
{行:0,细胞:0},{行:0,细胞:1},<强> {行:0,细胞:2},{行:0,细胞:3} 下,{行: 0,细胞:4}
{行:1,小区:0},{行:1,小区:1},<强> {行:1,小区:2},{行:1,小区:3} 下,{行: 1,小区:4}
{行:2,细胞:0},{行:2,细胞:1},<强> {行:2,细胞:2},{行:2,细胞:3} 下,{行: 2,小区:4}
...
(粗体值是您使用上述代码获得的值)
我希望它有所帮助,你只需要表ID。
答案 1 :(得分:0)
<强> HTML:强>
<Table id='tblTest'>
<thead >
<th>
ID
</th>
<th>
Name
</th>
</thead>
<tbody >
<tr>
<td>
1
</td>
<td>
JavaScript
</td>
</tr>
<tr>
<td>
2
</td>
<td>
JQuery
</td>
</tr>
</tbody>
</table>
<强> JQuery的:强>
var totRow=$('#tblTest tbody').find('tr').length;
var totCol=$('#tblTest thead').find('th').length;
for(var i=0;i<totRow;i++){
for(var j=0;j<totCol;j++){
var text= $('#tblTest tbody').find('tr:eq('+i+') td:eq('+j+')').text();
console.log(text.trim());
}
}
如果您想查看JSFiddle