繁体   English   中英

将 Django 模板变量传入 JS function

[英]Pass in Django Template Variable to JS function

在我的一个模板中,我有一个遍历所有项目的 for 循环。 当一个人喜欢或不喜欢某件物品时,我想用我的 function 来处理它。 将按钮的 HTML 设置为如下所示:

            <button onclick='update_like(arg1, arg2)'></button>{{ item.id}}

但是,我需要将我的模板变量传递给 function。 所以我尝试了这样的事情:

            <button onclick='update_like({{item.id}}, {{item.name}})'></button>{{ item.name}}

但是单击按钮只会输出: Uncaught SyntaxError: Unexpected token 'default'

这是我正在使用的完整模板的精简版:

{% extends 'base.html' %}
{% load static %}

{% block content %}
<div class="list">
    {% for item in items %}
               <button onclick='update_like({{item.id}}, {{item.name}})'></button>{{ item.name}}
    {% endfor %}
</div>

 <script>
 var count = {};
 function update_like(item_id, item_name) {
     count[item_id] = 1;
     console.log(count);
     return; 
 }
 </script>
{% endblock %}

假设 item.id 是数字,item.name 是字符串。 您必须像这样引用您的价值:

<button onclick="update_like({{item.id}}, '{{item.name}}')"></button>{{ item.name}}

为确保上述代码安全:将item.name ' \' item.name引号

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM