angularjs 弹出框 $modal

$modal只有一个方法:open,该方法的属性有:
templateUrl:模态窗口的地址template:用于显示html标签scope:一个作用域为模态的内容使用(事实上,$modal会创建一个当前作用域的子作用域)默认为$rootScopecontroller:为$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这个东东,第一次碰到这个东东,有很大抵触,觉得不好,但用起来我觉得和别的弹出框真没什么两样.废话 ...
随机推荐
- Atiti.大企业病与小企业病 大公司病与小公司病
Atiti.大企业病与小企业病 大公司病与小公司病 1. 大企业病,一般会符合机构臃肿 .多重领导 .人才流失的特点.1 2. 大企业病避免方法1 3. 小企业病 1 3.1.1. 表现1 4. 如何 ...
- 在MySQL数据库中创建一个完整的表
1.登陆成功后,首先进入某一个数据库 (不是指数据库服务器) use t1; //t1是数据库名 如图所示: 2.在此数据库中建立数据库表 2.1 先建立表结构(可以理解为表的列名,也就是字段名)在实 ...
- MySQL:常见使用问题
内容 1.Linux 上安装 MySQL 2.单机上安装多实例 3.不知root密码情况下,修改root密码 1.Linux 上安装MySQL 安装步骤: 1)解压 tar.gz文件 -linux-g ...
- 我的MYSQL学习心得(十一) 视图
我的MYSQL学习心得(十一) 视图 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据 ...
- 自定义可视化调试工具(Microsoft.VisualStudio.DebuggerVisualizers)
前言: 最近飞机失联的太多,明天要飞北京处理服务器双机热备的问题,航空保险已买,单号是:TF10122913. 至于我的银行卡密码,在我枕头下面的字条里,要是我之后没再更新文章,请通知我家人,哈哈哈哈 ...
- Storm构建分布式实时处理应用初探
最近利用闲暇时间,又重新研读了一下Storm.认真对比了一下Hadoop,前者更擅长的是,实时流式数据处理,后者更擅长的是基于HDFS,通过MapReduce方式的离线数据分析计算.对于Hadoop, ...
- CentOS 搭建openVPN
1.安装前准备 # 关闭selinux setenforce 0 sed -i '/^SELINUX=/c\SELINUX=disabled' /etc/selinux/config # 安装open ...
- python常用模块
os模块 os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname") 改变当前脚本工作目录:相当于shell下cd os ...
- git revert和reset区别
1.在github上建立测试项目并克隆到本地 2.本地中新建两个文本文件 3.将a.txt commit并push到远程仓库 执行 git add a.txt, git commit -m " ...
- JS 对象封装的常用方式
JS是一门面向对象语言,其对象是用prototype属性来模拟的,下面,来看看如何封装JS对象. 常规封装 function Person (name,age,sex){ this.name = na ...