选择下一行时,清除先前选择的表行

哈里特

当在表中选择一行时,我具有以下代码来创建左右边框。我希望边框仅在当前选中该行时显示,而在未选中该行时消失。

我附上一个模拟:

function addRowHandlers() {
    var table = document.getElementById("example");
    var rows = table.getElementsByTagName("tr");
    for (i = 0; i < rows.length; i++) {
        var currentRow = table.rows[i];
        var createClickHandler =
            function(row) {
                return function() {
                    var cell = row.getElementsByTagName("td")[0];

                    row.getElementsByTagName("td")[0].style.backgroundColor = "white";
                    row.firstElementChild.style.borderLeft = "black solid 2px";
                    row.lastElementChild.style.borderRight = "black solid 2px";
                    var id = cell.innerHTML;
                    alert("id:" + id);
                };
            };

        currentRow.onclick = createClickHandler(currentRow);
    }
}
window.onload = addRowHandlers();
tr td:first-child { border-left:2px solid transparent;}
tr td:last-child { border-right:2px solid transparent;}
<div>
<table id="example">
  <tr>
    <th>Firstname</th>
    <th>Lastname</th>
    <th>Age</th>
  </tr>
  <tr>
    <td>Jill</td>
    <td>Smith</td>
    <td>50</td>
  </tr>
  <tr>
    <td>Eve</td>
    <td>Jackson</td>
    <td>94</td>
  </tr>
  <tr>
    <td>John</td>
    <td>Doe</td>
    <td>80</td>
  </tr>
</table>

</div>

西奥多·K。

将一个类用于当前选择样式(我将其命名为highlight),然后单击,从该行的所有行中删除该类

for (var i = 0; i < table.rows.length; i++) {
     table.rows[i].classList.remove('highlight');
}

然后将其添加到当前行并row.className += "highlight";签出:

function addRowHandlers() {
  var table = document.getElementById("example");
  var rows = table.getElementsByTagName("tr");
  for (i = 0; i < rows.length; i++) {
    var currentRow = table.rows[i];
    var createClickHandler =
      function(row) {
        return function() {
          for (var i = 0; i < table.rows.length; i++) {
             table.rows[i].classList.remove('highlight');
          }
          
          var cell = row.getElementsByTagName("td")[0];

          row.getElementsByTagName("td")[0].style.backgroundColor = "white";
          row.className += "highlight";
          var id = cell.innerHTML;
        };
      };

    currentRow.onclick = createClickHandler(currentRow);
  }
}
window.onload = addRowHandlers();
tr:not(.highlight) td:first-child { border-left:2px solid transparent;}
tr:not(.highlight) td:last-child { border-right:2px solid transparent;}
tr.highlight td:first-child { border-left:2px solid black;}
tr.highlight td:last-child { border-right:2px solid black;}
<div>
<table id="example">
  <tr>
    <th>Firstname</th>
    <th>Lastname</th>
    <th>Age</th>
  </tr>
  <tr>
    <td>Jill</td>
    <td>Smith</td>
    <td>50</td>
  </tr>
  <tr>
    <td>Eve</td>
    <td>Jackson</td>
    <td>94</td>
  </tr>
  <tr>
    <td>John</td>
    <td>Doe</td>
    <td>80</td>
  </tr>
</table>
</div>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从cin选择下一行

来自分类Dev

在表格中选择下一行时,更新电子表格侧栏中的值

来自分类Dev

单击表行时突出显示,并在单击下一行时禁用

来自分类Dev

wxPython:在 frame1 上选择一行时,在 frame2 上选择了同一行

来自分类Dev

选择一行及其下一行和上一行

来自分类Dev

选择一行,上一行和下一行

来自分类Dev

选择DataGridView中的最后一行时,将返回上一行的值,而不是所选行的值

来自分类Dev

选择DataGridView中的最后一行时,将返回上一行的值,而不是所选行的值

来自分类Dev

在随机选择一行时忽略 .txt 文件中的某些行

来自分类Dev

在编辑NSTableView内部的NSTextField时按Enter键时,选择下一行

来自分类Dev

:: before,:: after选择器在使用position:absolute时转到下一行。

来自分类Dev

每当按下按钮时,如何在 Qt tableView 中自动选择下一行?

来自分类Dev

使用php从一个表中选择一行时向另一表中添加行

来自分类Dev

根据当前行选择完整的下一行

来自分类Dev

从使用(WHERE)条件选择的行中获取上一行和下一行

来自分类Dev

选择无序行集中的下一行或上一行

来自分类Dev

仅在DataGrid中选择一行时如何启用按钮?

来自分类Dev

选择最后一行时,Datagridview SelectedRows.Count始终为零

来自分类Dev

选择最后一行时,Datagridview SelectedRows.Count始终为零

来自分类Dev

当多个用户在Gridview中选择同一行时,出现Java脚本弹出框

来自分类Dev

在角度 ui-grid 中选择一行时仅获取可见列

来自分类Dev

在 p:dataTable 中选择一行时如何查询字段?

来自分类Dev

jQuery combogrid 在选择一行时识别输入框

来自分类Dev

在DataGridView C#中选择一行时选择一个单元格

来自分类Dev

ag-grid:从当前选择的行中随意选择下一行

来自分类Dev

在Google工作表中验证公式后如何选择选定的行和下一行?

来自分类Dev

选择下一行和上一行数据SQLite

来自分类Dev

在一行中选择表 3 行

来自分类Dev

jQuery选择下一个表行的UNIQUE

Related 相关文章

  1. 1

    从cin选择下一行

  2. 2

    在表格中选择下一行时,更新电子表格侧栏中的值

  3. 3

    单击表行时突出显示,并在单击下一行时禁用

  4. 4

    wxPython:在 frame1 上选择一行时,在 frame2 上选择了同一行

  5. 5

    选择一行及其下一行和上一行

  6. 6

    选择一行,上一行和下一行

  7. 7

    选择DataGridView中的最后一行时,将返回上一行的值,而不是所选行的值

  8. 8

    选择DataGridView中的最后一行时,将返回上一行的值,而不是所选行的值

  9. 9

    在随机选择一行时忽略 .txt 文件中的某些行

  10. 10

    在编辑NSTableView内部的NSTextField时按Enter键时,选择下一行

  11. 11

    :: before,:: after选择器在使用position:absolute时转到下一行。

  12. 12

    每当按下按钮时,如何在 Qt tableView 中自动选择下一行?

  13. 13

    使用php从一个表中选择一行时向另一表中添加行

  14. 14

    根据当前行选择完整的下一行

  15. 15

    从使用(WHERE)条件选择的行中获取上一行和下一行

  16. 16

    选择无序行集中的下一行或上一行

  17. 17

    仅在DataGrid中选择一行时如何启用按钮?

  18. 18

    选择最后一行时,Datagridview SelectedRows.Count始终为零

  19. 19

    选择最后一行时,Datagridview SelectedRows.Count始终为零

  20. 20

    当多个用户在Gridview中选择同一行时,出现Java脚本弹出框

  21. 21

    在角度 ui-grid 中选择一行时仅获取可见列

  22. 22

    在 p:dataTable 中选择一行时如何查询字段?

  23. 23

    jQuery combogrid 在选择一行时识别输入框

  24. 24

    在DataGridView C#中选择一行时选择一个单元格

  25. 25

    ag-grid:从当前选择的行中随意选择下一行

  26. 26

    在Google工作表中验证公式后如何选择选定的行和下一行?

  27. 27

    选择下一行和上一行数据SQLite

  28. 28

    在一行中选择表 3 行

  29. 29

    jQuery选择下一个表行的UNIQUE

热门标签

归档