AngularJs 弹出模态框(model)


Posted in Javascript onApril 07, 2016

推荐阅读:详解AngularJS 模态对话框

$modal是一个可以迅速创建模态窗口的服务,创建部分页,控制器,并关联他们。

$modal仅有一个方法open(options)

templateUrl:模态窗口的地址

template:用于显示html标签

scope:一个作用域为模态的内容使用(事实上,$modal会创建一个当前作用域的子作用域)默认为$rootScope

controller:为$modal指定的控制器,初始化$scope,该控制器可用$modalInstance注入

resolve:定义一个成员并将他传递给$modal指定的控制器,相当于routes的一个reslove属性,如果需要传递一个objec对象,需要使用angular.copy()

backdrop:控制背景,允许的值:true(默认),false(无背景),“static” - 背景是存在的,但点击模态窗口之外时,模态窗口不关闭

keyboard:当按下Esc时,模态对话框是否关闭,默认为ture

windowClass:指定一个class并被添加到模态窗口中

open方法返回一个模态实例,该实例有如下属性

close(result):关闭模态窗口并传递一个结果

dismiss(reason):撤销模态方法并传递一个原因

result:一个契约,当模态窗口被关闭或撤销时传递

opened:一个契约,当模态窗口打开并且加载完内容时传递的变量

另外,$modalInstance扩展了两个方法$close(result)、$dismiss(reason),这些方法很容易关闭窗口并且不需要额外的控制器

HTML

<!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-...min.js"></script> 
<script src="lib/angular/in/angular-locale_zh-cn.js"></script> 
</head> 
<body> 
<div ng-controller="ModalDemoCtrl"> 
<script type="text/ng-template" id="myModalContent.html"> 
<div class="modal-header"> 
<h>I'm a modal!</h> 
</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 = ['item', 'item', 'item']; 
$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[] 
}; 
$scope.ok = function () { 
$modalInstance.close($scope.selected); 
}; 
$scope.cancel = function () { 
$modalInstance.dismiss('cancel'); 
}; 
}; 
</script> 
</body> 
</html>

以上所述是小编给大家介绍的AngularJs 弹出模态框(model)的相关内容,希望对大家有所帮助!

Javascript 相关文章推荐
十分钟打造AutoComplete自动完成效果代码
Dec 26 Javascript
ExtJS[Desktop]实现图标换行示例代码
Nov 17 Javascript
jquery easyui combobox模糊过滤(示例代码)
Nov 30 Javascript
jquery选择器使用详解
Apr 08 Javascript
JQuery动画animate的stop方法使用详解
May 09 Javascript
Javascript基础教程之关键字和保留字汇总
Jan 18 Javascript
jQuery操作JSON的CRUD用法实例
Feb 25 Javascript
JavaScript注册时密码强度校验代码
Jun 30 Javascript
Node.js五大应用性能技巧小结(必须收藏)
Aug 09 Javascript
微信小程序 MinUI组件库系列之badge徽章组件示例
Aug 20 Javascript
JQuery发送ajax请求时中文乱码问题解决
Nov 14 jQuery
javascript Canvas动态粒子连线
Jan 01 Javascript
详解AngularJS 模态对话框
Apr 07 #Javascript
分离与继承的思想实现图片上传后的预览功能:ImageUploadView
Apr 07 #Javascript
jQuery动态添加
Apr 07 #Javascript
javascript模块化简单解析
Apr 07 #Javascript
jquery编写Tab选项卡滚动导航切换特效
Jul 17 #Javascript
js仿QQ中对联系人向左滑动、滑出删除按钮的操作
Apr 07 #Javascript
jQuery实现简单滚动动画效果
Apr 07 #Javascript
You might like
PHP中将数组转成XML格式的实现代码
2011/08/08 PHP
php使用exec shell命令注入的方法讲解
2013/11/12 PHP
ThinkPHP3.2.3框架Memcache缓存使用方法实例总结
2019/04/15 PHP
php探针使用原理和技巧讲解
2019/09/17 PHP
js的一些常用方法小结
2011/06/29 Javascript
JS限制上传图片大小不使用控件在本地实现
2012/12/19 Javascript
使用js实现雪花飘落效果
2013/08/26 Javascript
用js的for循环获取radio选中的值
2013/10/21 Javascript
JQuery判断HTML元素是否存在的两种解决方法
2013/12/26 Javascript
javascript:window.open弹出窗口的位置问题
2014/03/18 Javascript
详解Js中的模块化是如何实现的
2017/10/18 Javascript
js数组常用最重要的方法
2018/02/04 Javascript
webpack4 处理CSS的方法示例
2018/09/03 Javascript
使用RN Animated做一个“添加购物车”动画的方法
2018/09/12 Javascript
vue 的点击事件获取当前点击的元素方法
2018/09/15 Javascript
解决微信小程序防止无法回到主页的问题
2018/09/28 Javascript
Javascript读取上传文件内容/类型/字节数
2019/04/30 Javascript
IE11下处理Promise及Vue的单项数据流问题
2019/07/24 Javascript
javascript自定义加载loading效果
2020/09/15 Javascript
[01:02:25]2014 DOTA2华西杯精英邀请赛 5 24 iG VS DK
2014/05/26 DOTA
python基于xml parse实现解析cdatasection数据
2014/09/30 Python
Python使用xlrd模块操作Excel数据导入的方法
2015/05/26 Python
Python语法快速入门指南
2015/10/12 Python
python 简单的多线程链接实现代码
2016/08/28 Python
python 3.0 模拟用户登录功能并实现三次错误锁定
2017/11/01 Python
如何通过python实现人脸识别验证
2020/01/17 Python
Python内存映射文件读写方式
2020/04/24 Python
pytorch加载自己的图像数据集实例
2020/07/07 Python
美国批发供应商:Kole Imports
2019/04/10 全球购物
品学兼优的大学生自我评价
2013/09/20 职场文书
水污染治理工程专业求职信
2014/06/14 职场文书
运动会广播稿100字
2014/09/14 职场文书
公司催款律师函
2015/05/27 职场文书
《秦兵马俑》教学反思
2016/02/24 职场文书
详解MySQL 联合查询优化机制
2021/05/10 MySQL
Python编程根据字典列表相同键的值进行合并
2021/10/05 Python