好的,我正在使用d3.js生成可折叠的树。我得到的json格式是由python脚本转换的,它根据数据库值等计算内容。
现在python脚本以参数开始,该参数将是树的根,基于该根,我进行计算并获取依赖字典并转换为由html文件读取的json格式。
现在我想知道如何
1)向该html页面添加一个下拉列表,该页面将保存值。现在,这些值将由我的<python script A>
计算得出。所以我的脚本将查询数据库并获取一些值,我希望这些值作为html页面中的下拉列表。选择任何一个值,它应该将该值返回给我的另一个<python script B>
,然后将该值用作根并生成json值。
2)一旦生成了json值,我想要一个只刷新图形的按钮,不确定是否可能。例如,从下拉列表中选择一个值,然后单击“显示图形”按钮,然后运行我的<python script B>
并生成json文件并显示树的第一个节点。
没有使用html,所以我不知道如何将其整合。
感谢
答案 0 :(得分:1)
添加下拉列表首先获取您需要在下拉框中显示的所有值的列表。 使用此列表渲染html页面,如:
dropdownvalues = [val1,val2,val3,val4,...]
返回render_to_response('my_template.html', {'dropdownvalues':dropdownvalues}, context_instance = RequestContext的(请求))
现在实际的渲染代码是:
{%if dropdownvalues %}
<select name='DDL1' id='DDL1'>
{% for val in dropdownvalues %}
<option>{{val}}</option>
{% endfor %}
</select>
{% endif %}
现在添加按钮提交
现在添加jquery脚本以对提交按钮执行操作
$('#bttSubmit')。点击(function(){
$.ajax({
url: 'action_url',
type: 'POST',
data: {'val': $('#DDL1').val()},
success: function (result) {
// json response in result
// perform necessary operations
// take the data and apply it on particular chart.
}
});
});
在django视图中,您可以处理输入数据并将json响应返回给浏览器 并且您可以按照您想要的方式处理json数据