【发布时间】:2016-10-01 14:28:36
【问题描述】:
我正在使用 Angular JS 开发一个 Web 应用程序。我是 Angular JS 的新手。在我的应用程序中,我将 bootstrap.ui JS 用于 Angular js。但是我遇到了引导模态控制器的问题。我用新的控制器实例打开引导模式。然后我想在按下模态按钮时将事件返回给父控制器。
当在控制器中单击按钮时,我会打开 Bootstrap 模式,如下所示
var app = angular.module('memeApp',['ngRoute','ui.bootstrap','blockUI','ngFileUpload'],function($interpolateProvider) {
$interpolateProvider.startSymbol('<%');
$interpolateProvider.endSymbol('%>');
});
app.controller('DeleteConfirmModalController', ['$scope','$modalInstance','data',function ($scope, $modalInstance,data) {
$scope.closeDeleteConfirmModal = function () {
$modalInstance.dismiss('cancel');
};
$scope.deleteData = function()
{
//I want to call deleted function of DefaultController that opened current controller.
}
}]);
app.controller('DefaultController', ['$scope', 'Upload', '$timeout', '$http','$modal', function ($scope, Upload, $timeout , $http, $modal) {
$scope.deleted = function(param)
{
alert('deleted')
}
$scope.deleteTemplate = function(id,url)
{
var modalInstance = $modal.open({
controller: 'DeleteConfirmModalController',
templateUrl: $scope.deleteConfirmModalUrl,
resolve: {
data: function () {
return { id: id, url: url };
}
}
});
}
}]);
让我解释一下我上面的代码。当用户单击 DefaultController 中的按钮时,将调用 deleteTemplate 函数。因此该函数打开引导模式创建 DeleteConfirmModalController 的新实例。当用户点击引导模态的删除按钮时,模态控制器的deleteData函数会被调用。
所以我评论了我想在该函数中执行的操作。我想在 DefaultController 中调用已删除的函数。如何从模态控制器调用父控制器的该功能?
【问题讨论】:
标签: angularjs angularjs-scope angular-ui-bootstrap angularjs-controller angular-bootstrap