使用javascript获取Cell Value

时间:2012-07-05 09:52:50

标签: javascript jquery vb.net

我在一个具有以下结构的用户控件中有一个asp:table(table1)


           |  Col2 | Col3 | SUM
   DEFAULT |    5  |   2  |    
      R1   |    1  |   2  |     
      R2   |    4  |   5  |  

此处仅在aspx页面中静态创建标题,其余所有行都添加在.vb(动态)页面中。

我的要求是,在页面加载时(在客户端,在表加载后)我希望Sum列显示Col2和Col3的总和。此外,由于Col2和Col3是可编辑的,因此在单元格中的数据更改时,Sum值应自行更新。

如何找到单元格,因为我没有它们的ID,还应该调用哪些事件来显示这些值?

2 个答案:

答案 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