Javascript 带角点的自举模型。模式未使用特定数据ng click功能关闭

Javascript 带角点的自举模型。模式未使用特定数据ng click功能关闭,javascript,angularjs,twitter-bootstrap,bootstrap-modal,Javascript,Angularjs,Twitter Bootstrap,Bootstrap Modal,我试图弄明白为什么这个特定的引导确认模式不能与我想要的功能一起工作。它似乎与一个基本函数一起工作,该函数会弹出一个警报窗口,但当我放置我想要的函数时,它会执行该函数(在本例中,它会从文件堆栈和我的数据库中删除一个图像),但它会将模式窗口挂起,模式窗口关闭,但灰色覆盖层卡住,使页面不再正常工作。在modal footerdiv底部的第一个按钮中,似乎有一个函数保持着这个状态。关闭按钮工作正常,当我用一个简单的函数代替removeMoreImage()函数时,它再次工作正常这是引导模式的代码:

我试图弄明白为什么这个特定的引导确认模式不能与我想要的功能一起工作。它似乎与一个基本函数一起工作,该函数会弹出一个警报窗口,但当我放置我想要的函数时,它会执行该函数(在本例中,它会从文件堆栈和我的数据库中删除一个图像),但它会将模式窗口挂起,模式窗口关闭,但灰色覆盖层卡住,使页面不再正常工作。在
modal footer
div底部的第一个按钮中,似乎有一个函数保持着这个状态。关闭按钮工作正常,当我用一个简单的函数代替
removeMoreImage()
函数时,它再次工作正常这是引导模式的代码:

        <button type="button" class="btn btn-danger" data-toggle="modal" data-target="#confirm-modal-more"> <span class= "glyphicon glyphicon-remove-circle"></span> REMOVE IMAGE</button>

        <div id="confirm-modal-more" class="modal fade" role="dialog">
          <div class="modal-dialog">

            <div class="modal-content">
            <div class="modal-header">
              <button type="button" class="close" data-dismiss="modal">&times;</button>
              <h4 class="modal-title">Remove Image Confirmation</h4>
            </div>
            <div class="modal-body">
              <p>Are you sure you want to delete this image?</p>
            </div>
            <div class="modal-footer">
              <button type="button" class="btn btn-danger"  data-ng-click="removeMoreImage(picture.url, car)" data-dismiss="modal" >REMOVE</button>
              <button type="button" class="btn btn-default" data-dismiss="modal">CANCEL</button>
            </div>
            </div>

          </div>
        </div>
删除图像
&时代;
删除图像确认
是否确实要删除此图像

去除 取消
以下是导致挂起的正在执行的函数:

var getIndexIfObjWithOwnAttr = function(array, attr, value) {
    for (var i = 0; i < array.length; i++) {
        if (array[i].hasOwnProperty(attr) && array[i][attr] === value) {
            return i;
        }
    }
    return -1;
}

$scope.removeMoreImage = function(image, data) {
    var index = getIndexIfObjWithOwnAttr(data.morePictures, 'url', image);
    data.morePictures.splice(index, 1);
    filepickerService.remove(image);
    console.log(image + " has been removed!");
}
var getIndexIfObjWithOwnAttr=函数(数组、属性、值){
对于(var i=0;i

任何见解或建议都会很好。这看起来像是同步问题,但我不确定。

我最终使用了一些查询来强制关闭模式,它似乎工作得很好,尽管它不像我希望的那样优雅,但它似乎工作得很好。这是我添加到挂断模态的函数中的代码

 $('#confirm-modal-more').modal('hide');
 $('body').removeClass('modal-open');
 $('.modal-backdrop').remove();

我最终使用了一些查询来强制关闭模式,它似乎工作得很好,尽管它不像我希望的那样优雅,但它似乎工作得很好。这是我添加到挂断模态的函数中的代码

 $('#confirm-modal-more').modal('hide');
 $('body').removeClass('modal-open');
 $('.modal-backdrop').remove();

您可以在函数中关闭模态并将结果返回给父控制器:

$uibModalInstance.close('some result of modal');
$uibModalInstance.dismiss('some reason for discarding and closing');

$scope.removeMoreImage = function(image, data) {
    var index = getIndexIfObjWithOwnAttr(data.morePictures, 'url', image);
    data.morePictures.splice(index, 1);
    filepickerService.remove(image);
    console.log(image + " has been removed!");

    // close modal
    $uibModalInstance.close();
}

您可以关闭函数中的模式,并将结果返回给父控制器:

$uibModalInstance.close('some result of modal');
$uibModalInstance.dismiss('some reason for discarding and closing');

$scope.removeMoreImage = function(image, data) {
    var index = getIndexIfObjWithOwnAttr(data.morePictures, 'url', image);
    data.morePictures.splice(index, 1);
    filepickerService.remove(image);
    console.log(image + " has been removed!");

    // close modal
    $uibModalInstance.close();
}