2016-11-29 29 views
1

我有提交一个表单,各形式是删除对象:传递点击形式bootbox.confirm()

{% for person in persons %} 
<form id='form' name='delete' action="{% url 'delete_person' person.id %}" 
      method='POST'> 

    {% csrf_token %} 

    <button type='submit' onclick="bootbox.confirm();" id="del" class='btn btn-xs btn-link icon'><i class='glyphicon glyphicon-remove'></i></button> 
</form> 
{% endfor %} 

当我在删除图标点击相应的人应被删除,

我使用bootbox.confirm():

<script type="text/javascript"> 
$(document).ready(function(){ 
$(".btn#del").click(function(e) { 
    e.preventDefault(); 
    var lHref = $('form#form1').attr('action'); 
    bootbox.confirm("Are you sure?", function(confirmed) { 
     if(confirmed) { 
      window.location.href = lHref; 
     } 
    }); 
}); 
}) 
</script> 

我越来越形式的网址,如下所示:

var lHref = $('form#form1').attr('action'); 
    bootbox.confirm("Are you sure?", function(confirmed) { 
    if(confirmed) { 
    window.location.href = lHref; ... 

问题是无论我点击哪个删除按钮,表单中的第一个用户都会被删除,所以我正在为如何将$(this)传递给bootbox.confirm()所以我可以获得正确的url

回答

0

,而不是绑定到按钮的ID(这是多你的情况,因此将只绑定一个按钮的事件)使用表单提交事件

也从你按钮删除的onclick

{% for person in persons %} 
<form id='form' name='delete' action="{% url 'delete_person' person.id %}" 
      method='POST'> 

    {% csrf_token %} 

    <button type='submit' id="del" class='btn btn-xs btn-link icon'><i class='glyphicon glyphicon-remove'></i></button> 
</form> 
{% endfor %} 

在javascript

<script type="text/javascript"> 
$(document).ready(function(){ 
$("form").submit(function(e) { 
    e.preventDefault(); 
    var lHref = $(this).attr('action'); 
    bootbox.confirm("Are you sure?", function(confirmed) { 
     if(confirmed) { 
      window.location.href = lHref; 
     } 
    }); 
}); 
}) 
</script> 
+0

感谢问题解决了:) –

+0

欢迎您.. :) –