在模式关闭时关闭表单更改

Dismiss form changes on modal close

好的,所以,我有一个带有某种形式的模式,它应该在“保存”按钮上保存更改,但在“关闭”按钮上关闭它们。保存工作正常,但关闭不会关闭更改。

模式打开方式如下:

<i class="glyphicon glyphicon-file semi-transparent" data-ng-class="{'semi-transparent': !test.text}" data-toggle="modal" data-target="#testModal"></i>

这是模态:

<div class="modal fade " id="testModal">
<div class="modal-dialog">
    <div class="modal-content">
        <div class="modal-header">
            <button type="button" class="close" data-dismiss="modal">
                <span aria-hidden="true">&times;</span>
                <span class="sr-only">Close</span>
            </button>
            <h4 class="modal-title">Text</h4>
        </div>
        <div class="modal-body">
            <textarea class="form-control ng-pristine ng-valid ng-touched" rows="9" style="margin-top: 15px;" data-ng-model="test.text"></textarea>
        </div>
        <div class="modal-footer">
            <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
            <button type="button" class="btn btn-blue" data-dismiss="modal" data-ng-click="save()">Save changes</button>
        </div>
    </div>
</div>

有没有办法在关闭时取消更改,使用数据目标打开模式?

试试这个

<button type="button" class="close" data-dismiss="testModal">

当您在文本区域中进行更改时,它会保存在您的模型中 text.text,这是 Angular 的双向绑定。 所以你必须在关闭按钮上添加一个 ng-click="cancel()" :

<button type="button" class="btn btn-default" data-dismiss="modal" data-ng-click="cancel()">Close</button>

并在该函数中将您的 $scope.test.text 值重置为之前的状态。