Angular-ui模态窗口只打开一次

时间:2013-08-17 08:58:00

标签: angularjs angular-ui

我有使用angular-ui的角度应用程序。我需要模态窗口。我的模态窗口模板:

<div modal="shouldBeOpen" close="close()" options="opts">
        <div class="modal-header">
            <h3>Create new entry</h3>
        </div>
        <div class="modal-body" ng-repeat="e in create_elements">
            {{e}}
        </div>

        <div class="modal-footer">
          ...
        </div>
</div>

和打开和关闭的处理程序:

$scope.open = function(){        
    $scope.shouldBeOpen = true; 
}


$scope.close = function(){        
    $scope.shouldBeOpen = false; 
}

但它只打开一次,点击打开按钮后没有任何效果。如何解决?

谢谢。

2 个答案:

答案 0 :(得分:0)

使用解决方案创建了一个plunkr:AngularJS Modal Dialog - plunkr

工作正常。

答案 1 :(得分:0)

我已经在jsfiddle上创建了另一个类似于你的代码的尝试。应该注意的是,单击外部模态调用close()但是为了清楚起见,我已经包含了一个按钮。代码几乎保持不变。

http://jsfiddle.net/priyaranjan/dDjWe/

<强>标记

<div ng-app="myApp" ng-controller="myCtrl">
   <button class="btn" ng-click="open()">Open me!</button>
    <div modal="shouldBeOpen" close="close()" options="opts">
        <div class="modal-header"><h3>Create new entry</h3></div>
        <div class="modal-body">body</div>
        <div class="modal-footer">
            <button class="btn btn-warning cancel" ng-click="close()">Cancel</button>
        </div>
    </div>
</div>

<强>的JavaScript

angular.module('myApp', ['ui.bootstrap'])
    .controller('myCtrl',
        function($scope){

            // code from so post
            $scope.open = function(){
                $scope.shouldBeOpen = true;
            };

            $scope.close = function(){
                $scope.shouldBeOpen = false;
            };
        }
);

随时结帐angular documentation for modal