作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在将数据从数组变量传递到 python javascript 函数时遇到了这个问题。下面是整个脚本
array1 =[['X-val', 'Y-val'], [4, 5], [8, 12], [11, 14]];
self.response.out.write('<script type="text/javascript">'+
'google.load("visualization", "1", {packages:["corechart"]});'+
'google.setOnLoadCallback(drawChart);'+
'function drawChart() { '+
'var data = google.visualization.arrayToDataTable({0});' +
'var chart = new google.visualization.LineChart(document.getElementById("casestrend"));chart.draw(data);} '+
'</script> '.json.dumps(array1))
这是我要转换为 python 格式的 javascript 代码,其中 arrayToDataTable() 所需的数组将通过查询获取。目前它的静态版本(上面的 array1)不起作用
<script type="text/javascript">
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawChart);
function drawChart() {
var data = google.visualization.arrayToDataTable([['X-val', 'Y-val'], [4, 5], [8, 12], [11, 14]]);
var chart = new google.visualization.LineChart(document.getElementById('chart'));
chart.draw(data);
}
</script>
请告诉我如何将数据(数组)从 python 传递到 javascript 以便加载图表。
最佳答案
您当前的解决方案不起作用,因为 format
(您错过了,对吗?)在字符串连接之前调用。
在当前情况下,我更喜欢连接而不是格式,以防止大括号转义:
js_code = '''
<script type="text/javascript">
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawChart);
function drawChart() {
var data = google.visualization.arrayToDataTable(''' + json.dumps(array1) + ''');
var chart = new google.visualization.LineChart(document.getElementById("casestrend"));chart.draw(data);}
</script>
'''
关于javascript - 如何将数组变量从 Python 插入到 Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36080978/
我是一名优秀的程序员,十分优秀!