更短的问题:如何在带有Python后端的D3.js应用程序中以编程方式创建和动态更改工具栏?
我试图为使用Flask编写的模拟创建Javascript / D3可视化,作为使用Tkinter GUI的替代方法。我希望通过单选按钮选择特定模型。更改选择不仅会更改绘图,还会切换到适合该模型的数字输入工具栏。我想以编程方式创建工具栏,以便在代码中添加新模型时,会自动生成相应的工具栏。
我的问题是有很多方法可以操纵DOM,而且我不清楚最好的方法是什么:
Python / Flask可以操纵DOM,但我认为这需要一个 页面刷新。
如果使用HTML导入,则每个工具栏必须有一个单独的.html文件。
可以为每个工具栏创建一个唯一的<div>
,并根据需要隐藏/取消隐藏,但创建十几个<div>
而不是交换一个{{1}的内容感觉不对}}
每次需要工具栏时,都可以拆除/构建工具栏<div>
,但是从头开始构建相同的工具栏会感觉不对。
innerHTML可以交换,但这可能不好?比照this SO question
在前端操作DOM有多种选择:JS,D3,JQuery ......
为了说明,这是我到目前为止的截图。单选按钮在两个型号之间切换。代替工具栏,我有一个模型工具栏信息的JSON转储。 JSON转储将被其作为一系列标签和数字输入的解释所取代。