jquery - 在Jquery代码中修改django模板变量

标签 jquery python django django-templates

我有一个 Django 模板,我在其中检查变量是真还是假。现在,在 Jquery 中的特定事件上,我想将此 django 变量值修改为 TRUE 或 FALSE。

在 views.py 中

var = True

在模板中

{% if var %}

do something

{% endif %}

HTML代码

<form>

  <label for="target">Enter Key:</label>
  <input id="target" type="text" />

 {% if var %}

 dispaly other stuff

 {% endif %}

 </form>

查询

 <script>
   $('#target').keydown(function(event) {
      if ($(this).val() == '00000 )
       {
        jvar = {{var}}
       }
     });

我想根据特定事件更改 Jquery 中“var”的值

我怎样才能做到这一点?

提前致谢

最佳答案

如果我正确理解你的问题,你就不能。

模板变量在服务器端,jQuery 在客户端工作。

因此您无法更改模板,但可以在浏览器中更改生成的 HTML。使用 firefox firebug 之类的东西检查 HTML,你会发现没有 django 模板的痕迹。

当您的模板 html/javascript 代码到达浏览器时,jvar = {{var}} 将类似于 jvar = 4325

只需打开 firebug 控制台并测试 javascript/jQuery 表达式。

<script type="text/javascript">
$('document').ready(function(){
    $('#some_element_id').click(function(ev) {
        jvar = 1;
        $('#some_content').show();
        $('#some_other_content').hide();
    });

    $('#some_other_element_id').click(function(ev) {
        jvar = 2;
        $('#some_content').hide();
        $('#some_other_content').show();
    });
});
</script>
...
<div id="some_content">
     display some stuff
</div>

<div id="some_other_content">
     display some other stuff
</div>

关于jquery - 在Jquery代码中修改django模板变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8982842/

相关文章:

javascript - 简单的 slider 设置值

python - bash 中的\'$char 是什么意思?

python - 如何在 Django-rest-framework View 集上允许复杂的 URL

django - 如果不存在则创建

javascript - 我们可以将 jsp 变量传递给 jQuery 就绪函数吗

php - 如何使用 jQuery/Ajax 和 PHP 检索 HTML 和变量

javascript - 从 javascript 调用 python

python - 如何获取客户端发送请求的时间戳?

javascript - 在django View 中渲染url变量

javascript - 带有周数和天数的日期选择器