我對jinja2相對較新(並且絕不是Web開發專家),並且我無法獲取與jinja模板關聯的JavaScript來重新加載(並更新其變量),這取決於程序。如何重新加載jinja模板的JavaScript?
從本質上講,我有一個模板,通過項目列表迭代:
{% for item in items %}
<p> {{item['property a']}}</p>
blah blah blah`
,然後我調用另一個模板,我內進口的循環:
{% import 'secondTemplate.html' as s %} //not sure whether this matters if it goes inside or outside the for loop
<p> {{s.doSecondStuff(item)}}</p>
這所有的作品。第二個模板每次執行每個項目,這是我想要的。
但是,我有一些secondTemplate.js與secondTemplate.html相關聯,它對傳遞給secondTemplate.html的變量進行操作。我的問題是secondTemplate.js只能處理第一個項目的值。
這似乎是從Loading external script with jinja2 template directive頂端回答會的工作,所以我一直在試圖把在下面的for循環:
{% block javascript %}
<script type="text/javascript">
{% include "secondTemplate.js" %}
</script>
{% endblock %}
但爵士仍是隻反映了第一個項目的值在列表中。
任何想法?謝謝!
你的JavaScript看起來像/做什麼? – Trendy
你能提供完整的模板代碼嗎?我在下面寫了一個答案,你可能會覺得有用,但它不能回答你的問題。 –
對我來說,似乎你正在混合服務器端和客戶端處理。 'secondTemplate.js'做什麼**完全**?你爲什麼不在服務器上用Python做到這一點?你真的**在那裏做什麼?不要抽象!告訴我們你最終想達到的目標。 – dAnjou