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 相关文章推荐
ExtJs使用总结(非常详细)
Mar 22 Javascript
jquery简单图片切换显示效果实现方法
Jan 14 Javascript
AngularJS学习笔记之依赖注入详解
May 16 Javascript
javascript实现瀑布流动态加载图片原理
Aug 12 Javascript
D3.js实现文本的换行详解
Oct 14 Javascript
form+iframe解决跨域上传文件的方法
Nov 18 Javascript
jquery实现图片上传前本地预览
Apr 28 jQuery
Angularjs中date过滤器失效的问题及解决方法
Jul 06 Javascript
浅谈layui 数据表格前后台传值的问题
Sep 12 Javascript
Node对CommonJS的模块规范
Nov 06 Javascript
vue prop属性传值与传引用示例
Nov 13 Javascript
vue实现随机验证码功能(完整代码)
Dec 10 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
双料怀旧--SHARP GF515的维护、修理和简单调试
2021/03/02 无线电
PHP编程网上资源导航
2006/10/09 PHP
动态生成gif格式的图像要注意?
2006/10/09 PHP
mysql数据库差异比较的PHP代码
2012/02/05 PHP
PHP中的一些常用函数收集
2015/05/26 PHP
php用户登录之cookie信息安全分析
2016/05/13 PHP
jQuery+php简单实现全选删除的方法
2016/11/28 PHP
mac系统下安装多个php并自由切换的方法详解
2017/04/21 PHP
JQuery 获得绝对,相对位置的坐标方法
2010/02/09 Javascript
IE的事件传递-event.cancelBubble示例介绍
2014/01/12 Javascript
BootStrap Validator对于隐藏域验证和程序赋值即时验证的问题浅析
2016/12/01 Javascript
VUE使用vuex解决模块间传值问题的方法
2017/06/01 Javascript
Nginx 配置多站点vhost 的方法
2018/01/07 Javascript
vue2.0 datepicker使用方法
2018/02/04 Javascript
vue项目中实现图片预览的公用组件功能
2018/10/26 Javascript
JavaScript迭代器的含义及用法
2019/06/21 Javascript
从零使用TypeScript开发项目打包发布到npm
2020/02/14 Javascript
python中__call__方法示例分析
2014/10/11 Python
python PIL模块与随机生成中文验证码
2016/02/27 Python
使用XML库的方式,实现RPC通信的方法(推荐)
2017/06/14 Python
python绘制条形图方法代码详解
2017/12/19 Python
python找出完数的方法
2018/11/12 Python
Linux上使用Python统计每天的键盘输入次数
2019/04/17 Python
Pycharm中切换pytorch的环境和配置的教程详解
2020/03/13 Python
jupyter notebook 重装教程
2020/04/16 Python
详解python os.path.exists判断文件或文件夹是否存在
2020/11/16 Python
域名注册、建站工具、网页主机、SSL证书:Dynadot
2017/01/06 全球购物
德国自行车商店:Tretwerk
2019/06/21 全球购物
店长助理岗位职责
2013/12/13 职场文书
考试作弊被抓检讨书
2014/01/10 职场文书
医学专业应届生的自我评价
2014/02/28 职场文书
先进个人材料怎么写
2014/12/30 职场文书
2015年学校财务工作总结
2015/05/19 职场文书
主题班会开场白
2015/06/01 职场文书
3招让你摆脱即兴讲话冷场尴尬
2019/08/08 职场文书
Apache SeaTunnel实现 非CDC数据抽取
2022/05/20 Servers