【发布时间】:2021-12-09 14:01:19
【问题描述】:
我正在尝试在for loop 中为每个实例打开一个Pop up Model,但pop up model 正在为第一个实例打开但不为其他实例打开。我在模板循环中使用Django。
模板.html
{% for comment in comments %}
<button id="ModelButton">Open Model</button>
<div id="Model" class="flagModel">
<div class="modal-content">
<div class="modal-mod">
<div class="container-fluid">
<form method="post" enctype="multipart/form-data">
{% csrf_token %}
{{form}}
<input type="submit">
</form>
</div>
</div>
</div>
</div>
<script>
var formModel= document.getElementById("Model");
var formButton = document.getElementById("ModelButton");
formButton .onclick = function () {
formModel.style.display = "block";
}
window.onclick = function (event) {
if (event.target == formModel) {
formModel.style.display = "none";
}
}
</script>
{% endfor %}
当我将JavaScript 放在for loop 之外时,它甚至都不起作用。
我已经尝试了很多次,但仍然无法正常工作。任何帮助将非常感激。谢谢你
【问题讨论】:
-
你不能在循环中使用 id
-
你的意思是我应该使用
class而不是id来完成这项工作? -
是的,我更喜欢在脚本中使用类和更改
-
但是当我使用
document.getElementByClassName时,模型甚至没有在循环之外打开
标签: javascript html css django django-templates