如何防止在 django 模板中缓存我的 Javascript

How to prevent caching of my Javascript in django template?

本文关键字:缓存 我的 Javascript 何防止 django      更新时间:2023-09-26

这是我的JavaScript函数:

<script>
   function text() {
      var i = new Array();
      {% for content in table %}
         i[{{content.id}}]= document.getElementById('checkbox{{content.id}}').checked;
      {% endfor %}
      return i;
   }
</script>

如您所见,我在其中有一些 django 模板代码。 如何防止缓存我的脚本?

看到了这个,但它没有解决我的问题!

我不确定我是否正确理解,但据我所知,这与缓存无关:这是理解何时呈现模板与何时执行脚本的问题。

此脚本包含在模板中。该模板呈现在服务器端。因此,脚本将生成 - 并发送到浏览器 - 其值与当时一样content

如果你有一个 Ajax 函数,它稍后会更新 HTML 页面中的某些内容,这个脚本根本不会在乎,因为你没有做任何事情来更新它 - 同样,脚本中的值在模板发送到浏览器时是硬编码的。

您可能根本不想这样做。相反,您应该查找或定义包含所有复选框(例如div 或表行)的父元素,然后动态循环访问该元素的所有后代以查找任何复选框的值。然后,您可以从 Ajax 函数调用此脚本,以便在内容更改时更新值。