我如何在渲染模板和隐藏模态后重置表单

How can I reset form after render template and hide modal

本文关键字:模态 隐藏 表单      更新时间:2023-09-26

我有一个django视图,我渲染一个模板如下:

 return render(request, 'submission/submit_url.html',
                                      {'form': form, 'has_modal_info': 1})

在我的模板(submit_url)上,我得到变量"has_modal_info"并根据值(0或1)我决定调用或不调用我的模态:

<!-- Modal content-->
        <div class="modal-content">
            {% if has_modal_info %}
                {% include 'submission/finishing_modal.html' %}
                <script>
                    var finishing_modal = $('#end-submission-modal');
                    finishing_modal.modal();
                </script>
                <script>
                    finishing_modal.on('hidden.bs.modal', function(e){
                        var id_url_form = $('#id_url_form');
                        id_url_form[0].reset();
                        console.log("Your event works!");
                    });
                </script>
            {% endif %}
        </div>
    </div>
</div>

我要重置的表单:

<form id="id_url_form" action="{% url 'pages.submission.views.submit_url' %}" class="form-horizontal" method="post" enctype="multipart/form-data" name="url_form">

渲染和提交表单后,我调用我的模态,并试图"挂钩"的隐藏事件通过重置我的表单清除所有字段的事件,但它不工作。尝试Jquery触发器和很多可能性,但没有成功。我的观点是,这是因为django渲染钩我的模态调用,不能清除的形式,但我不知道如何解决这个问题。有什么建议吗?

你可以试试这个吗

id_url_form.each(function(){  
   $(this).val('')
}