在单击背景时使用angularJS将模态堆叠在另一个模态上

时间:2016-05-26 05:08:45

标签: html angularjs twitter-bootstrap javascript-events

当用户点击模态的背景或按下退出按钮时,我试图让模态出现在另一个模态(如一堆模态)的顶部(在这种情况下是一个对话框询问你是否是想进一步发展。)

问题是我无法弄清楚如何调用事件的preventDefault()函数,因为我觉得它是我问题的解决方案。目前,当点击背景时,当前模态消失,第二个模态取而代之,而不是出现在当前模态之上,将其置于背景中。

这是我的代码段:

开始 -

(function () {
'use strict';
angular
    .module('controller.main', [])
    .controller('Main', ['$location', '$state', '$uibModal', 'user', 'auth', 'model', function ($location, $state, $uibModal, user, auth, model) {
var vm = this;

应该执行预期任务的相关代码 -

        vm.openConfirmCancelDB = function (size) 
        {
            $uibModal.open({
                animation: vm.animationsEnabled,
                templateUrl: '/views/confirmCancelProcessModal.html',
                controller: 'Cancel',
                controllerAs: 'cancel',
                size: size,
                backdrop: 'static',
                resolve: {}
            });
        };

        vm.openLogin = function (size) 
        {
            var OLP = $uibModal.open(
            {
                animation: vm.animationsEnabled,
                templateUrl: '/views/login.html',
                controller: 'Modal',
                controllerAs: 'modal',
                size: size,
                //backdrop: 'static',
                resolve: {
                    inUser: function () {
                        var user = {};
                        return user;
                    }
                }
            });

            OLP.result.then(function() 
            {
                //event.preventDefault();
            }, 
            function () 
            {
                vm.openConfirmCancelDB('sm');
            });
        };

        vm.register = function (size) 
        {
            console.log(vm.registerform);
            var RP = $uibModal.open(
            {
                animation: vm.animationsEnabled,
                templateUrl: '/views/register.html',
                controller: 'Registration',
                controllerAs: 'modal',
                //backdrop: 'static',
                size: size,
                resolve: {
                    inUser: function () {
                        var user = {
                            email: vm.email,
                            password: vm.password
                        };
                        return user;
                    }
                }
            });

            RP.result.then(function() 
            {
                //event.preventDefault();
            }, 
            function () 
            {
                vm.openConfirmCancelDB('sm');
            });
        };

openConfirmCancelDB()是帮助打开对话框的函数。问题是我如何调用preventDefault()函数,以便当对话框出现在此模式的顶部时,使当前模态保持在背景中。如何访问事件及其preventDefault功能?此外,任何其他可以帮助解决我的问题的方法对我来说也没关系

0 个答案:

没有答案