【发布时间】:2017-06-02 18:54:45
【问题描述】:
我正在动态尝试将从 for 循环中获取的数据传递给按钮。我正在使用 django 在 for 循环中获取数据,使用 html 来制作按钮,使用 jquery 来传递数据。我不确定这是否是最好的描述。
我的代码是:
{% for dogs in Dogs.Other %}
<form id="primaryDogForm" action="{% url 'personal:account:email_dog_confirm' %}" method="post">
{% csrf_token %}
<input type="hidden" id="dogId" name="dogId" value="{{ dogs }}">
<input type="button" value="Make this your primary dog" id="makePrimaryButton" class="btn btn-primary" data-toggle="modal" data-target="#makePrimary" />
</form>
{% endfor %}
基本上,人们可以将狗列表添加到他们的帐户中,然后选择一只狗作为他们的主要狗。我希望在单击按钮时调用模式。并且该模态应该显示可能成为主要狗的狗的名称。 模态代码如下:
<div class="modal fade" id="makePrimary" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
<h4 class="modal-title">Make Primary</h4>
</div>
<div class="modal-body">
<p>
You are about to make <span id="newDog" name="newDog"></span> your primary dog.
</p>
<hr>
<a href="#" id="makePrimarySubmit" class="btn btn-primary">Submit</a>
</div>
</div>
</div>
</div>
让一切正常工作的 jquery 是:
$('#makePrimaryButton').click(function() {
($('#newDog').text($('#dogId').val()));
});
$('#makePrimarySubmit').click(function(){
$('#primaryDogForm').submit();
});
我面临的问题是,假设我有一个包含三只狗的列表,每只狗都有一个“将其设为您的主要狗”按钮,那么该按钮仅适用于第一只狗。在单击第一个按钮之前,其余按钮不起作用。 单击第一个按钮后,所有其他按钮也将获得第一只狗的值。因此,列表中的狗 2 和狗 3 不能成为主要狗。
我很确定问题出在我的 html 和 jquery 上。有没有办法让按钮动态化,以便按钮获得与其关联的狗的值?这样,任何狗都可以成为主要狗。
非常感谢。
【问题讨论】:
标签: javascript jquery html django