追加另一个时删除子表

时间:2019-02-28 12:15:16

标签: javascript

您好,我是javascript的新手,我正在使用select元素基于字典数组创建表。我让select元素充当值的过滤器。我的问题是,当我更改select元素的值并创建表时,我希望它删除它附加的前一个表,这样就不会形成一长串的表。我的变更代码如下:

const filteredTable = document.getElementById("candidates_example");
const newFilteredTable = filteredTable.cloneNode(true);

removeRowsFromTable(newFilteredTable);
const filteredTbody = newFilteredTable.getElementsByTagName('tbody')[0];

const filterSelection = document.getElementById("filterSelect").value;
const selectFilter = filterCandidateBySkill(newCandidates, filterSelection)
addCandidatesToTable(filteredTbody,selectFilter);

document.body.appendChild(newFilteredTable);

我尝试使用Google搜索来查找问题,但是我对javascript术语了解得不够多,无法知道我需要提出的问题。感谢您提供的任何指导。

3 个答案:

答案 0 :(得分:1)

您可以使用replaceChild用新表替换上一个表:

  

replacedNode = parentNode.replaceChild(newChild,oldChild);

在您的情况下,应该是:

document.body.replaceChild(newFilteredTable, filteredTable);

答案 1 :(得分:1)

而不是追加,将.html()用于jquery或document.getElementById('demo')。innerHTML = tableVaiable;

答案 2 :(得分:0)

您可以使用.replaceWith()jQuery函数的功能。 .replaceWith()