gpt4 book ai didi

javascript - 无法使用 django 变量和 javascript 变量创建 if 条件

转载 作者:行者123 更新时间:2023-12-01 03:29:12 24 4
gpt4 key购买 nike

我在 javascript 中创建了变量类型表,我需要在该变量与 django 数据库中的变量之间使用 if 条件进行测试,但它不起作用。

示例:

var test_date = "2017-06-23";
var locations = [
{% for v in vs %}

{% if v.date == test_date %}

['okok',{{ v.latitude }},{{ v.longitude}}],

{% endif %}

{% endfor%}
]

第一个示例不起作用,我不知道为什么。

其他示例:

var test_date = "2017-06-23";
var locations = [
{% for v in vs %}

{% if v.date == "2017-06-23" %}

['okok',{{ v.latitude }},{{ v.longitude}}],

{% endif %}

{% endfor%}
]

当我将变量的值放入测试中时,它正在工作

最佳答案

模板的 Django 部分({% %})在服务器上执行,而 javascript 部分在客户端(仅在浏览器中)执行。模板标签内的所有变量都是django的变量。重点是 django 可以看到文本和模板标签。它不会执行任何 jacascript 行。

让我展示 django 和 javascript 如何看待您的第一个示例。

Django:

some text
{% for v in vs %}

{% if v.date == test_date %}

another text

{% endif %}

{% endfor%}
more text

现在您会看到没有任何 test_date 变量。如果没有 test_date 变量(为空),则它不能等于 v.date

JavaScript:

var test_date = "2017-06-23";
var locations = [
]

如您所见(您可以在浏览器的开发工具中检查)您的服务器没有为 JavaScript 生成任何文本,因此 locations 数组为空。

如果您只是想测试 v.date 是否等于某个字符串,则可以在与此模板对应的 view 中创建变量 test_date 并将其添加到上下文中.

关于javascript - 无法使用 django 变量和 javascript 变量创建 if 条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44636205/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com