0

次の構造を持つユーザー コントロールに asp:table(table1) があります。


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

ここでは、ヘッダーのみが aspx ページで静的に作成され、残りのすべての行は .vb (動的) ページに追加されます。

私の要件は、ページの読み込み時 (テーブルが読み込まれた後、クライアント側で)、Sum 列に Col2 と Col3 の合計を表示することです。また、Col2 と Col3 は編集可能であるため、セルのデータが変更されると、Sum 値自体が更新されます。

ID がないため、セルを見つけるにはどうすればよいですか?また、これらの値を表示するためにどのイベントを呼び出す必要がありますか?

4

2 に答える 2

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;
           }
        }
    }

次のように表示できます: (おそらくこれは単純に見えるでしょう)
テーブル:
{row:0,cell:0},{row:0,cell:1}, {row:0,cell:2},{row :0,cell:3} ,{row:0,cell:4}
{row:1,cell:0},{row:1,cell:1}, {row:1,cell:2},{row: 1,セル:3} ,{行:1,セル:4}
{行:2,セル:0},{行:2,セル:1}, {行:2,セル:2},{行:2 ,cell:3} ,{row:2,cell:4}
...
(太字の値は、上記のコードで取得する値です)
お役に立てば幸いです。必要なのはテーブル ID だけです。

于 2012-07-05T10:01:55.017 に答える
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を見たい場合

于 2012-07-05T10:11:16.153 に答える