【问题标题】:passing the clicked form to bootbox.confirm()将点击的表单传递给 bootbox.confirm()
【发布时间】:2016-11-29 12:15:46
【问题描述】:

我有一个带提交的表单,每个表单都是删除一个对象:

{% 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

【问题讨论】:

    标签: javascript jquery forms bootbox


    【解决方案1】:

    而不是绑定到按钮的 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>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-05-17
      • 1970-01-01
      • 2019-05-25
      • 1970-01-01
      • 2021-05-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多