Django模板:为javascript变量插入值

Django模板:为javascript变量插入值,javascript,jquery,django,django-templates,flot,Javascript,Jquery,Django,Django Templates,Flot,我试图在Django模板中分配一些javascript变量 我遇到了一个问题,我分配的值被正确写入页面(我可以在页面源代码中看到它们),但仍然显示为null 我正在这样做: <script type="text/javascript"> var coords = []; {% for i in item_list %} coords.push([ {{i.x}}, {{i.y}} ]); {% endfor %} </script> 它似乎是完全有效

我试图在Django模板中分配一些javascript变量

我遇到了一个问题,我分配的值被正确写入页面(我可以在页面源代码中看到它们),但仍然显示为
null

我正在这样做:

<script type="text/javascript">
  var coords = [];
  {% for i in item_list %}
    coords.push([ {{i.x}}, {{i.y}} ]);
  {% endfor %}
</script>
它似乎是完全有效的javascript,但是,使用Firebug查看
coords
的值,这就是产生的结果:

coords.push([ -320.435118373, -149.333637576 ]);
coords.push([ -120.41321373 , -329.312376 ]);
...
[[null, null], [null, null], [null, null]...[null, null]]
因此很明显,每个
push()
调用都正常进行,每次都会添加一个大小为2的新数组。但是,由于某些原因,数值文本的计算结果都是
null

有人知道如何正确使用这些值吗

更新:在我将数组中的值传递到jQuery flot插件之前,数组中的值似乎都很好:

$.plot($('#mapWrapper'), coords, options);

所以我想这与我使用Django模板的方式没有任何关系。尽管如此,我还是很好奇
$的问题是什么。plot

我已经在一个测试应用程序中试用过,效果很好(item_list是一个dict列表,其中float作为“x”和“y”元素)。你一定在做什么,但你没有在这里展示


我想知道这是否是一个奇怪的编码问题,也许你在不知不觉中使用了奇怪的unicode字符?

plot到底要做什么?听起来好像它应该以某种方式与coords一起工作,在这种情况下,为点传入一个数组是正确的吗

我本来希望得到一个哈希或Coords对象数组,比如:

coords.push({ "x":-320.435118373, "y":-149.333637576 });
coords.push({ "y":-120.41321373, "y":-329.312376 });

只是想一想。

看来我错过了一件小事。我使用的是一个数据系列,它是一个数组数组。实际上,jQueryFlot插件需要一个系列数组,也就是数组数组,所以我需要一个三重嵌套数组

改变这一点:

$.plot($('#mapWrapper'), coords, options);
为此:

$.plot($('#mapWrapper'), [coords], options);
解决了这个问题


感谢所有看过这篇文章的人。

您是否已经使用Firebug完成了代码?是的,如上所述,我发现问题实际上与Django模板无关。flot确实为数据系列使用了数组。这是我第一次使用flot,但是我已经使用了很多flotr(原型的模仿者),并且文档表明了相同的用法。