我在一个 javascript 模板中循环,如:
{% for movie in movies %}
{{movie.name}}
{% endfor %}
Run Code Online (Sandbox Code Playgroud)
无论如何,我可以调用一个返回所需 DOM 元素的 javascript 函数,例如:
{% for movie in movies %}
<script>
function get_movie(name) {
return "<div> class='movie-title'>name</div>
}
get_movie({{movie.name}})
</script>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)
我只想调用一个 js 函数并进行一些检查并根据...返回一个元素。
当然有可能。您最好将<script>标签移出 django 循环,并且也可能起作用。仅供参考,我将在此处放一个代码示例,该示例在我的 django 管理页面中绘制图表:
<script type="text/javascript">
{% if cl.show_chart %}
(function($) {
$(document).ready(function() {
var data = [
{% for sold in cl.get_sold_info %}
{
fullname: '{{ sold.fullname }}',
date: {{ sold.date|date:"U" }}000,
partner: '{{ sold.partner }}',
price: {{ sold.price }}
},
{% endfor %} ];
draw_charts(data, $);
});
})(someNamespace.jQuery);
{% endif %}
</script>
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,标签内有一些 django 条件<script>,然后在某个函数内使用模板 for 循环呈现一些数组。draw_charts定义在外部某处。在所有这些情况下,我的建议是——尽可能多地移出这样的地方,否则你的代码就会变成旧的 PHP4。
| 归档时间: |
|
| 查看次数: |
6342 次 |
| 最近记录: |