gpt4 book ai didi

javascript - 按类名删除表格行 - Javascript

转载 作者:行者123 更新时间:2023-11-29 18:27:15 25 4
gpt4 key购买 nike

我浏览了很多关于这段简单代码的论坛帖子。并尝试了许多变体和方法,但没有任何效果。

我有一个基于数据库查询构建表的脚本。我将其限制为 10 个结果,并提供前进和后退按钮以转到数据库中的其他结果。当您按下下一步按钮时,我需要它删除所有当前表行,以便它可以使用查询的新结果重新创建它们。我正在使用以下代码删除行;

if (document.getElementsByClassName('shiftTrRow')) {
table = document.getElementById('resultsTable')
deleteRow = document.getElementsByClassName('shiftTrRow');
table.removeChild(deleteRow);
}

我使用 if 案例来检查是否有任何行要删除,我添加了一个警报来测试是否发现了行并且这有效。

当我运行代码时,我收到以下错误:

table.removeChild(deleteRow)

Uncaught Error: NOT_FOUND_ERR: DOM Exception 8

我查看了错误代码,它解释说找不到元素,但事实并非如此,因为只有找到元素时才会执行此代码。如果有人知道我做错了什么或更好的方法,我将不胜感激。

最佳答案

document.getElementsByClassName 将返回一个 NodeList,而不是单个节点。您需要从该列表中选择一个节点,例如 document.getElementsByClassName('shiftTrRow')[0]

还要确保该节点实际上是给定表的子节点。以下代码更安全一些:

if (document.getElementsByClassName('shiftTrRow'))
{
deleteRow = document.getElementsByClassName('shiftTrRow')[0];

if(deleteRow.parentNode)
deleteRow.parentNode.removeChild(deleteRow);
}

关于javascript - 按类名删除表格行 - Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11817788/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com