Javascript 删除事件更改后附加的先前数据

Javascript 删除事件更改后附加的先前数据,javascript,jquery,Javascript,Jquery,我有大量的代码,但我只会显示我目前所使用的部分。我试图修复的是,当我将数据追加到表中并更改事件时,以前的数据也会追加到表中的新数据中。我知道有很多关于这方面的文章,我在一些建议使用detach()的地方查阅了它们。但是我不想在以后附加数据,所以这不适用于我。我还尝试使用remove(),但在事件更改时,它会在数据最初加载之前立即删除数据 我没有控制台错误,所有内容都包装在document.ready()函数中 我想要达到的目标: 在事件更改时,如果用户更改输入,则加载数据,从以前的事件中删除以前

我有大量的代码,但我只会显示我目前所使用的部分。我试图修复的是,当我将数据追加到表中并更改事件时,以前的数据也会追加到表中的新数据中。我知道有很多关于这方面的文章,我在一些建议使用
detach()
的地方查阅了它们。但是我不想在以后附加数据,所以这不适用于我。我还尝试使用
remove()
,但在事件更改时,它会在数据最初加载之前立即删除数据

我没有控制台错误,所有内容都包装在
document.ready()
函数中

我想要达到的目标:

在事件更改时,如果用户更改输入,则加载数据,从以前的事件中删除以前的数据,并从当前事件中加载新数据

这是我的密码:

var重命名位置;
开关(选择器.选择标签){
案例“示例事件1”:
重命名位置=[];
数据标签=;
数据计数=;
var locationsPHP=;
var countPHP=;
位置P.forEach(功能(第i项){
//$('table#relevantdataModal')。查找('tbody')。innerHTML='';
//这是可行的,但它会在事件更改时立即删除数据,而不是加载数据并在以后删除。。。
$('table#relevantdataModal')。查找('tbody')。删除();
$('table#relevantdataModal').find('tbody').append(''+locationsPHP[i]+''+countPHP[i]+'');
});
打破
案例“示例事件2”:
重命名位置=[];
数据标签=;
数据计数=;
打破
}//End switch语句
而不是remove()和append(),您可能希望尝试将innerHTML用于普通JavaScript。在jQuery中,这也是通过.html()完成的

在您的情况下,它将是:$('table#relevantdataModal').find('tbody').html(…添加您的内容…)

下面是一些有关vanilla JS和jQuery的快速W3参考

香草JS-W3

jQuery-W3

感谢您的建议。然而,当我添加
html
时,它仍然会立即删除事件更改的数据。不过我有个主意。我的表在一个引导模式中,我将尝试看看,如果该模式被隐藏,我是否只能删除数据,如果它被重新带回来,请添加回数据。您可以让事件侦听器清除模式体,然后使用.html()插入所需的整个html代码。最后,让事件侦听器中的函数打开模式。empty()方法在这里可能很有用。祝你好运