模型窗口窗体不会重置"$pristine"而破坏

Model window form doesn't reset the values of "$pristine" while destroy

本文关键字:quot pristine 窗口 窗体 模型      更新时间:2023-09-26

我正在模型窗口中设计一个angularjs表单,我已经设置了像$质朴这样的验证来检测表单的变化。我的问题是:如果我在表单字段中进行任何更改并破坏模型窗口表单。当我再次打开它时,就会显示之前的更改,例如"$质朴"值没有设置为默认值。我在谷歌上搜索了更多,但没有任何解决方案。

我的部分代码是:

<div id="new-contact" class="modal" tabindex="-1" style="z-index: 9999;">
<div class="modal-dialog" style="width: 80%;">
    <form data-editable-form="editable-form" name="contactForm" autocomplete="off" id='contactForm' role='data-editable-form' method="post" novalidate>
        <fieldset>
            <div class=" col-xs-12" ng-class="{'has-error' : contactForm.contacts_type.$invalid && !contactForm.contacts_type.$pristine }">
                <label for="form-field-select-1" style="width: 250px;">
                    <msg key="contacttype" />
                </label>
                <label>
                    <select class="form-control" name="contacts_type" style="border-color: #d5d5d5 !important;" id="form-field-select-tag-type" required data-ng-model="contactContent.type">
                        <option value="" style="display: none;">{{'selectcontacttype'|localize}}</option>
                        <option value="BC">{{'businesscontact'|localize}}</option>
                        <option value="PC">{{'personalcontact'|localize}}</option>
                    </select>
                </label>
            </div>
        </fieldset>
    </form>
</div>

我使用显示/隐藏这个窗口:

$("#new-contact").modal('show');
$("#new-contact").modal('hide');

我也试图使用$route. reload ();与隐藏在他们的控制器,但没有任何成功。

有谁能告诉我怎么做吗?

还记得重置FORM (contactform)。

$('#contactForm').trigger('reset');

这是数据的实际来源

您是否尝试了hidden.bs.modal事件

<script>
$(document).ready(function() {
    $('#new-contact').on('hidden.bs.modal', function () {
          $(':input','#contactForm').val("");
    });
});
</script>