Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用javascript将字典传递给django模板_Javascript_Python_Django_Django Templates - Fatal编程技术网

如何使用javascript将字典传递给django模板

如何使用javascript将字典传递给django模板,javascript,python,django,django-templates,Javascript,Python,Django,Django Templates,我试图通过JavaScript将字典值传递给django模板 视图.py population_count = ( {'name': 'Year 1800', 'data': '[107, 31, 635, 203, 2]'}, {'name': 'Year 1900', 'data': '[133, 156, 947, 408, 6]'}, {'name': 'Year 2012', 'data': '[1052, 954, 4250, 740, 38]'}, ) po

我试图通过JavaScript将字典值传递给django模板

视图.py

population_count = (
    {'name': 'Year 1800', 'data': '[107, 31, 635, 203, 2]'},
    {'name': 'Year 1900', 'data': '[133, 156, 947, 408, 6]'},
    {'name': 'Year 2012', 'data': '[1052, 954, 4250, 740, 38]'},
)
population_count_js = json.dumps(population_count)
jsonstring 但我得到的错误是 " 未捕获的语法错误:JSON输入在(索引)处的JSON.parse()处意外结束:17“

index.html

<script>
    var a = '{{data|safe }}';

    console.log(JSON.parse(a))

    var b = '{{count|safe}}';

    console.log(JSON.parse(b))


    Highcharts.chart('container', {
        chart: {
            type: 'column'
        },
        title: {
            text: 'Historic World Population by Region'
        },
        xAxis: {
            categories: JSON.parse(a)
        },
        series: JSON.parse(b)
    });
</script>

var a='{data | safe}}}';
log(JSON.parse(a))
var b='{count | safe}}}';
console.log(JSON.parse(b))
Highcharts.chart('容器'{
图表:{
类型:“列”
},
标题:{
正文:“按区域分列的历史世界人口”
},
xAxis:{
类别:JSON.parse(a)
},
系列:JSON.parse(b)
});
我不喜欢图表中的输出


未捕获的语法错误:JSON.parse()处的JSON输入意外结束(索引):17

您可以使用
console.log(a)
?我认为您向呈现函数发送数据的方式不正确,您发送的是
{'data':population\u count\u js},{'count':population\u count\u js}
您可以通过发送数据进行检查吗?
{'data':population\u count\u js,'count':population\u count\u js}
我们可以查看
console.log(a)
console.log(b)
的结果吗?
  var b = '{{count|safe}}';

  console.log(JSON.parse(b))
<script>
    var a = '{{data|safe }}';

    console.log(JSON.parse(a))

    var b = '{{count|safe}}';

    console.log(JSON.parse(b))


    Highcharts.chart('container', {
        chart: {
            type: 'column'
        },
        title: {
            text: 'Historic World Population by Region'
        },
        xAxis: {
            categories: JSON.parse(a)
        },
        series: JSON.parse(b)
    });
</script>