У меня есть мода с угловым UI с формой. Когда пользователь запускает событие отклонения, я хочу реализовать подтверждение на основе $ dirty. Я искал в многочисленных источниках, чтобы найти понятия на Promise и может успешно получить, например. предупреждение во время закрытия события. Тем не менее, я не могу найти нигде, как фактически остановить модальное от закрытия.Подтверждение углового модального закрытия на грязной форме
EDIT:
С текущего кода подтверждения предупреждения часто (на удивление не всегда) появляется после того, как модальный уже уволен.
var editResourceModalController = function($scope, $uibModalInstance) {
$uibModalInstance.result.catch(function() {
if ($scope.editForm.$dirty) {
window.confirm("close modal?");
}
$uibModalInstance.dismiss('cancel');
});
}
var uibModalInstance;
$scope.openEditModal = function() {
uibModalInstance = $uibModal.open({
animation: true,
templateUrl: "edit.html",
controller: editResourceModalController
});
}
Спасибо за ваш ответ. Тем не менее, я не хочу подключать его только к нажатию кнопки, я хочу поймать щелчок назад и кнопку ESC, чтобы отменить события. Более того, я до сих пор не знаю, как остановить модальное от фактического закрытия, если пользователь отменит отмену. Могу ли я использовать 'preventDefault()'? –
Почему вы не устанавливаете слушателей для этих событий и не обрабатываете их так, как хотите? – atefth
не могли бы вы быть более конкретными? –