无法在下拉列表更改时清除d3.js div

时间:2016-05-07 20:50:19

标签: javascript d3.js

我正在使用d3.js创建一些表,其中表是根据用户选择的下拉选项填充的,该选项会过滤数据。这工作正常。 我在桌子上添加脚注。我遇到的问题是,当下拉列表更改时,脚注div不会清除。因此,当您选择“A部分”时,您会看到脚注a,b,c。然后,当您选择“B部分”时,脚注d将附加到这些部分。我想在这种情况下只看到脚注d。

我添加了d3.select(“#footnotes”)。remove(); 在上面创建脚注的地方,但这不起作用。 如何在下拉列表中创建脚注div之前清除它?

这是一个Plunker: https://plnkr.co/edit/SnuLaLcNGgOh15Vn0456?p=preview

代码也在下面:

@Override
public void KeyReleased(KeyEvent e){
    //
}

JSON文件位于Plunker中。

1 个答案:

答案 0 :(得分:3)

您的d3.select("#footnotes").remove();正在运行,这不是问题所在。问题是,var notesvar added应在每change后清除。我所做的只是把它们都放在你的'#34;更改"功能

以下是plunker:https://plnkr.co/edit/Co61GlCydJAzxiV24Adt?p=preview

PS:我不是在D3中使用remove()的忠实粉丝。您可以轻松地使用相同的结果而不使用它(例如,这是相同的,但没有remove()部分:https://plnkr.co/edit/5OS2BTwSWl1om4IPqcEV?p=preview)。