angularjs 弹出框 $modal


$modal只有一个方法:open,该方法的属性有:
templateUrl
:模态窗口的地址template:用于显示html标签
scope
:一个作用域为模态的内容使用(事实上,$modal会创建一个当前作用域的子作用域
)默认为$rootScope
controller
:为$modal指定的控制器,初始化$scope,该控制器可用$modalInstance
注入resolve
:定义一个成员并将他传递给$modal指定的控制器,相当于routes的一个reslove属性,如果需要传递一个objec对象,需要使用angular.copy()backdrop
:控制背景,允许的值:true(默认),false(无背景),“static
” - 背景是存在的,但点击模态窗口之外时,模态窗口不关闭keyboard
:当按下Esc时,模态对话框是否关闭,默认为turewindowClass
:指定一个class并被添加到模态窗口中
open方法返回一个实例,该实例具有如下属性:
close(result)
:关闭模态窗口并传递一个结果dismiss(reason)
:撤销模态方法并传递一个原因result
:一个契约,当模态窗口被关闭或撤销时传递opened
:一个契约,当模态窗口打开并且加载完内容时传递的变量
另外,$modalInstance扩展了两个方法$close(result)
、$dismiss(reason)
,这些方法很容易关闭窗口并且不需要额外的控制器
- <!DOCTYPE html>
- <html ng-app="ModalDemo">
- <head>
- <title></title>
- <link href="lib/bootstrap/css/bootstrap.min.css" rel="stylesheet">
- <script src="lib/angular/angular.min.js"></script>
- <script src="lib/bootstrap-gh-pages/ui-bootstrap-tpls-0.7.0.min.js"></script>
- <script src="lib/angular/i18n/angular-locale_zh-cn.js"></script>
- </head>
- <body>
- <div ng-controller="ModalDemoCtrl">
- <script type="text/ng-template" id="myModalContent.html" />
- <div class="modal-header">
- <h3>I'm a modal!</h3>
- </div>
- <div class="modal-body">
- <ul>
- <li ng-repeat="item in items"><a
- ng-click="selected.item = item">{{ item }}</a></li>
- </ul>
- Selected: <b>{{ selected.item }}</b>
- </div>
- <div class="modal-footer">
- <button class="btn btn-primary" ng-click="ok()">OK</button>
- <button class="btn btn-warning" ng-click="cancel()">Cancel</button>
- </div>
- </script>
- <button class="btn" ng-click="open()">Open me!</button>
- </div>
- <script>
- var ModalDemo = angular.module('ModalDemo', [ 'ui.bootstrap' ]);
- var ModalDemoCtrl = function($scope, $modal, $log) {
- $scope.items = [ 'item1', 'item2', 'item3' ];
- $scope.open = function() {
- var modalInstance = $modal.open({
- templateUrl : 'myModalContent.html',
- controller : ModalInstanceCtrl,
- resolve : {
- items : function() {
- return $scope.items;
- }
- }
- });
- modalInstance.opened.then(function() {// 模态窗口打开之后执行的函数
- console.log('modal is opened');
- });
- modalInstance.result.then(function(result) {
- console.log(result);
- }, function(reason) {
- console.log(reason);// 点击空白区域,总会输出backdrop
- // click,点击取消,则会暑促cancel
- $log.info('Modal dismissed at: ' + new Date());
- });
- };
- };
- var ModalInstanceCtrl = function($scope, $modalInstance, items) {
- $scope.items = items;
- $scope.selected = {
- item : $scope.items[0]
- };
- $scope.ok = function() {
- $modalInstance.close($scope.selected);
- };
- $scope.cancel = function() {
- $modalInstance.dismiss('cancel');
- };
- };
- </script>
- </body>
- </html>
angularjs 弹出框 $modal的更多相关文章
- angularjs 弹出框 $modal 参数(转)
angularjs 弹出框 $modal $modal只有一个方法:open,该方法的属性有: templateUrl:模态窗口的地址 template:用于显示html标签 scope:一个作用 ...
- 留存- angularjs 弹出框 $modal
$modal只有一个方法:open,该方法的属性有: templateUrl:模态窗口的地址 template:用于显示html标签 scope:一个作用域为模态的内容使用(事实上,$modal会创建 ...
- jquery dialog-优雅的弹出框
前面一章已经对datepicker的使用,做了简单的说明.这一章主要对dialog如何使用做个说明. jquery ui-dialog在web开发中运用还是比较多的.最常见的例子就是登 ...
- element-ul 处理 组件内的弹出框close问题
<el-dialog custom-class="rental-pop" :close-on-click-modal="false" :append-to ...
- bootstrap的编辑标记 angularjs input 弹出框
.html <div> {{instance.description}} <span class="glyphicon glyphicon-pencil btn-link& ...
- Bootstrap使用模态框modal实现表单提交弹出框
Bootstrap 模态框(Modal)插件 模态框(Modal)是覆盖在父窗体上的子窗体.通常,目的是显示来自一个单独的源的内容,可以在不离开父窗体的情况下有一些互动.子窗体可提供信息.交互等.如果 ...
- [Bootstrap]modal弹出框
写在前面 在实际开发中,为了友好,更需要一种美观的弹出框,js原生的alert,很难满足需求.这里推荐一个bootstrap的弹出框. 一个例子 先看效果吧 代码: <!DOCTYPE html ...
- js自定义弹出框
js自定义弹出框: 代码如下 <html> <head><title>自定义弹出对话框</title> <style type ="te ...
- Bootstrap弹出框(modal)垂直居中
最近在做一个eit项目,由于此项目里面一些框架要遵循nttdata的一些规则,故用到了Bootstrap这个东东,第一次碰到这个东东,有很大抵触,觉得不好,但用起来我觉得和别的弹出框真没什么两样.废话 ...
随机推荐
- SMBus set up a 2-byte EEPROM address for read/write
Sequencer Engine spec: http://www.analog.com/media/en/technical-documentation/data-sheets/ADM1260.pd ...
- 如何区别char与varchar?
1.varchar与char两个数据类型用于存储字符串长度小于255的字符,MySQL5.0之前是varchar支持最大255.比如向一个长度为40个字符的字段中输入一个为10个字符的数据.使用var ...
- ASP.NET 5运行时升级到Beta5
在Visual Studio 2015 RTM和Windows 10正式发布之前,微软把开源.NET升级到了beta5,带来了一些增强和改变.和Visual Studio 2015 RC一起安装的AS ...
- 腾讯云上免费部署HTTPS
接上篇<腾讯云下安装 nodejs + 实现 Nginx 反向代理>,想从头一步到位的同学建议从上篇文章开始阅读.本文将继续介绍如何通过 Nginx 免费部署HTTPS. 留意下,这里的“ ...
- jQuery +ajax +json+实现分页
正文 首先我们创建一般处理程序,来读取数据库中内容,得到返回值. 创建文件,GetData.ashx. 我这里是用的存储过程,存储过程会再下面粘出来,至于数据只是实例,你们可根据需求自行读取数据 代码 ...
- C#设计模式-中介者模式
在现实生活中,有很多中介者模式的身影,例如QQ游戏平台,聊天室.QQ群和短信平台,这些都是中介者模式在现实生活中的应用,下面就具体分享下我对中介者模式的理解. 一. 中介者(Mediator)模式 从 ...
- VS2010中dll不可用问题
最近做项目的时候,深圳那边提供了一个算法.算法在那边跑的好的很,但是在我这边怎么跑都跑不起来,总是报错:说找不到dll. 1.第一种想法:找不到dll,是不是dll放的位置不对.找了一下目录,导入的路 ...
- 解决js动态改变dom元素属性后页面及时渲染问题
今天实现一个进度条加载过程,dom结构其实就是两个div <div class="pbar"> <div class="ui-widget-header ...
- 《JavaScript 源码分析》之 jquery.unobtrusive-ajax.js
/*! ** Unobtrusive Ajax support library for jQuery ** Copyright (C) Microsoft Corporation. All right ...
- jQuery的DOM操作实例(2)——拖拽效果&&拓展插件
一.原生JavaScript编写拖拽效果 二.jQuery编写的拖拽效果 三.在jQuery中拓展一个拖拽插件