如何在每次隐藏模态时重置模态内容(removeData() 不起作用)

How can I reset modal-content every time the modal is hidden (removeData() didn't work)?

本文关键字:模态 removeData 不起作用 隐藏      更新时间:2023-09-26

Bootstrap 3 和 AngularJS 1.4.0.

如果我使用remote功能加载模态内容,我需要$compile它,但在这种情况下removeData()不起作用,因为在 dom 中编写模态内容时它也不会起作用。

样品.html

<div id="saveModal" class="modal inmodal fade" aria-hidden="true" role="dialog" tabindex="-1" refresh-modal>
    <div class="modal-dialog">
        <div class="modal-content">
            <!-- Content here or remote -->
        </div>
    </div>
</div>

脚本.js

.directive("refreshModal", ['$compile', function($compile) {
    return {
        restrict: 'A',
        link: function($scope, element, attrs) {
            element.on('loaded.bs.modal', function(e) {
                $compile(element.contents())($scope);
            }).on('hidden.bs.modal', function (e) {
                element.removeData('bs.modal');
            });
        }
    }
}])

重置表单是不够的,因为模态内容中还有一些不属于表单的其他文本。

我建议使用Angular UI Bootstrap。

这个项目由角度团队顶峰,并与Angular Apps配合得更好。

与尝试让 Bootstrap JS 组件与 Angular 很好地协同工作相比,您将经历更少的痛苦。