亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如下圖片+代碼,請問JS如何實現獲取表格中的單元格里面的數據,并讓其累加呢?

如下圖片+代碼,請問JS如何實現獲取表格中的單元格里面的數據,并讓其累加呢?

喵喔喔 2023-04-26 16:12:56
<script type="text/javascript" >       var getTd=document.getElementById("myTable");           rowsLength=getTd.rows.length;      var theDate ;    for(var i=1;i<rowsLength;i++)     {    var std=getTd.rows[i].cells[2].innerText;    var stdVlue=std.replace(/天/gi,'');     stdVlue=Number(stdVlue); //getTd.rows[i].cells[11].innerText=stdVlue;       for(var g=rowsLength;g>=2;g--)     {         var std2=getTd.rows[g].cells[11].innerText;         var stdVlue2=std2.replace(/天/gi,'');         stdVlue2=Number(stdVlue2);         theDate=stdVlue2+stdVlue;     }         getTd.rows[i].cells[11].innerText=stdVlue;        document.write(stdVlue);        document.write("<br/>");        document.write(theDate);        document.write("<br/>");     }</script>
查看完整描述

1 回答

?
森欄

TA貢獻1810條經驗 獲得超5個贊

其實 ... 我沒太弄明白你的程序要實現什么效果 ...

所以只好按照標題來回答你 ... 如何累加表格中單元格的數據 ...

寫了一個簡單的程序來作為示例 ... 如下 ...

<table id="thetable" border="1" cellspacing="1" cellpadding="7" width="50%">
    <caption>Sunyanzi's Test</caption>
    <tbody>
        <tr><td>1</td><td>2</td></tr>
        <tr><td>3</td><td>4</td></tr>
        <tr><td>5</td><td>6</td></tr>
        <tr><td>7</td><td>8</td></tr>
        <tr><td>9</td><td>10</td></tr>
        <!-- the row below is used to fill sum data ... -->
        <tr><th></th><th></th></tr>
    </tbody></table><script type="text/javascript">

    /* get our table ... */
    var table = document.getElementById( "thetable" );    /* last line not contain data ... kick it out ... */
    var totalRows = table.rows.length -1;    /* initialize two variables as basket ... */
    var firstColumn = secondColumn = 0;    /* traverses from first row to last ... */
    for ( var i = 0; i < totalRows; ++ i ) {        /* add new value to our basket ... */
        firstColumn += Number( table.rows[i].cells[0].innerHTML ) || 0;
        secondColumn += Number( table.rows[i].cells[1].innerHTML ) || 0;

    }    /* put the result in last row ... */
    table.rows[i].cells[0].innerHTML = firstColumn;
    table.rows[i].cells[1].innerHTML = secondColumn;</script>

順便提一下你的代碼里面的幾個小問題 ... 希望能對你有些幫助 ...

首先是表格中的 rows 和 cells 數組 ... 第一個元素的索引都是 0 而不是 1 ...

比如表格的第一行 ... 應該是 i = 0 而不是 i = 1 ...

第一列和第二列 ... 應該是 cells[0] 和 cells[1] 而不是 cells[1] 和 cells[2] ...

以及你用到了 innerText ... 在 Gecko 內核的瀏覽器上是沒有這個屬性的 ...

Gecko 上類似的屬性叫 textContent ... 當然其他瀏覽器也不支持 ...

所以當你的 td 標簽中只包含數字不包含其他 HTML 標簽的時候 ...

完全可以用兼容性更好的 innerHTML 來處理 ...

基本上我一眼能看到的就這些 ...

我覺得既然你能寫到這里 ... 知道問題所在絕對就可以把程序改好了 ...

恩加油~


查看完整回答
反對 回復 2023-04-28
  • 1 回答
  • 0 關注
  • 146 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號