如何从<;中删除每三行;t车身>;只使用JavaScript?

如何从<;中删除每三行;t车身>;只使用JavaScript?,javascript,html,Javascript,Html,我想删除此代码中的每第三行。 我怎么能做到? 谢谢你的回答 我试着这样做: const table = document.getElementById('myTable'); for (let i =0; i <table.rows.length; i++) { if (i%3 === 0 ) { table.deleteRow(i) } } const table=document.getElementById('myTable'); 对于(设i=0;i问题在于,一旦

我想删除此代码中的每第三行。 我怎么能做到? 谢谢你的回答

我试着这样做:

const table = document.getElementById('myTable');

for (let i =0; i <table.rows.length; i++) {
  if (i%3 === 0 ) {
    table.deleteRow(i)
  }
}
const table=document.getElementById('myTable');

对于(设i=0;i问题在于,一旦您从表中删除一行,表的行。length属性将减少1,并且行的顺序也将更改。(因此,删除后,下三分之一将是与删除前不同的元素)

最好从最后一个元素迭代到第一个元素,如:

var myTable=document.getElementById(“myTable”);
对于(var a=myTable.rows.length-1;a>0;a--){
如果((a+1)%3==0){
myTable.deleteRow(a)
}
}

第一排。
第二排。
删除3
4排。
5排。
删除6
第一排。
第二排。
删除9
用于迭代所有行的选择

consttablerows=document.queryselectoral(“#mytable tr”)
数组.from(tableRows).forEach((行,i)=>{
如果((i+1)%3==0){
row.parentNode.removeChild(row);
}
})

一排。
2排。
删除3
4排。
5排。
删除6
7排。
8排。
删除9

您可以尝试以下方法:

var table=document.querySelectorAll('tbody tr');

for(让i=0;i)您的javascript代码有什么问题?使用类或id来标识要删除的trs将是一个更好的主意,并且更易于与css一起使用selector@PanosK,使用
:n-child()
可以在不修改HTML的情况下完成这项工作。哦,真的很好!谢谢你,祝你愉快!任何你选择不使用
.forEach()的原因。
.queryselectoral()
返回的节点列表。@RandyCasburn,没有这样的原因,我只想坚持OP的代码……谢谢:)
        <tbody>
            <tr>
                <td>First row.</td>
            </tr>
            <tr>
                <td>Second row.</td>
            </tr>
          <tr>
                <td>DELETE 3</td>
            </tr>
          <tr>
                <td>4 row.</td>
            </tr>
          <tr>
                <td>5 row.</td>
            </tr>
          <tr>
                <td>DELETE 6</td>
            </tr>
          <tr>
                <td>First row.</td>
            </tr>
            <tr>
                <td>Second row.</td>
            </tr>
          <tr>
                <td>DELETE 9</td>
            </tr>
        </tbody>