【问题标题】:How can I reset form after render template and hide modal如何在渲染模板和隐藏模式后重置表单
【发布时间】:2015-07-14 20:32:40
【问题描述】:

我有一个 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">

呈现并提交表单后,我调用我的模式并尝试通过在该事件上重置我的表单以清除所有字段来“挂钩”hidden 事件,但它不起作用。 尝试了 Jquery 触发器和很多可能性,但没有成功。 我的观点是,发生这种情况是因为 django 渲染被我的模态调用挂钩并且无法清除表单,但我不知道如何解决这个问题。 有什么建议吗?

【问题讨论】:

    标签: javascript jquery python django django-forms


    【解决方案1】:

    你可以试试这个

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

    【讨论】:

    • thx 例如,无法使其正常工作...到目前为止,我的解决方案是“强制”清除字段$('#element).val('').change();
    猜你喜欢
    • 2016-12-07
    • 2017-07-04
    • 2023-03-10
    • 2016-01-14
    • 2020-02-23
    • 2013-10-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多