Если вы установите backdrop: 'static'
в своем modalInstance
, решите проблему?
Так:
var modalInstance = $modal.open({
...
backdrop: 'static',
...
});
Затем вам нужно только управлять кнопкой ngClick, отвечающей за закрытие модального окна.
Надеюсь это поможет.
ОБНОВЛЕНИЕ 1 [только дополнительная информация]
Используйте keyboard: false
для отключения Escape
:
var modalInstance = $modal.open({
...
backdrop: 'static',
keyboard: false
...
});
ОБНОВЛЕНИЕ 2
Погуглил и нашел вариант. В вашем модальном контроллере используйте:
$modalInstance.result.then(function (e) {
//...
}, function (e) {
//called before modal close
});
Пример:
var modalInstance = $modal.open({
templateUrl: templateUrl,
controller: modalController
});
function modalController($scope, $modalInstance){
... //your code
$modalInstance.result.then(function (e) {
//...
}, function (e) {
//called before modal close
});
... //your code
}
Но вам нужен способ не продолжать события, чтобы закрыть модальное окно. Или разрешить пользователю сохранять данные перед закрытием модального окна. Вот что зашло так далеко.
ОБНОВЛЕНИЕ 3
Проверьте это.
person
Doug
schedule
10.02.2015