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 相关文章推荐
图片无缝滚动代码(向左/向下/向上)
Apr 10 Javascript
jQuery定义背景动态切换效果的方法
Mar 23 Javascript
再谈JavaScript异步编程
Jan 27 Javascript
微信小程序实现滴滴导航tab切换效果
Jul 24 Javascript
解决select2在bootstrap modal中不能正常使用的问题
Aug 09 Javascript
Vue 应用中结合vux使用微信 jssdk的方法
Aug 28 Javascript
antd Upload 文件上传的示例代码
Dec 14 Javascript
koa大型web项目中使用路由装饰器的方法示例
Apr 02 Javascript
node.js实现带进度条的多文件上传
Mar 27 Javascript
使用jquery实现轮播图效果
Jan 02 jQuery
关于JavaScript回调函数的深入理解
Jun 27 Javascript
关于对TypeScript泛型参数的默认值理解
Jul 15 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分页函数代码(简单实用型)
2010/12/02 PHP
实现获取http内容的php函数分享
2014/02/16 PHP
php编写的抽奖程序中奖概率算法
2015/05/14 PHP
[原创]php正则删除img标签的方法示例
2017/05/27 PHP
PHP 命名空间和自动加载原理与用法实例分析
2020/04/29 PHP
jQuery-ui中自动完成实现方法
2010/06/10 Javascript
基于jquery的Repeater实现代码
2010/07/17 Javascript
Ext 今日学习总结
2010/09/19 Javascript
textarea中的手动换行处理的jquery代码
2011/02/26 Javascript
jQuery 瀑布流 绝对定位布局(二)(延迟AJAX加载图片)
2012/05/23 Javascript
使用JavaScript的ActiveXObject对象检测应用程序是否安装的方法
2014/04/15 Javascript
jQuery通过扩展实现抖动效果的方法
2015/03/11 Javascript
浅谈JavaScript中的string拥有方法的原因
2015/08/28 Javascript
javascript 判断两个日期之差的示例代码
2015/09/05 Javascript
解决angular的post请求后SpringMVC后台接收不到参数值问题的方法
2015/12/10 Javascript
JavaScript获取服务器时间的方法详解
2016/12/11 Javascript
JavaScript实现电灯开关小案例
2020/03/30 Javascript
js实现三角形粒子运动
2020/09/22 Javascript
[03:04]DOTA2英雄基础教程 影魔
2013/12/11 DOTA
Python实现Windows上气泡提醒效果的方法
2015/06/03 Python
Django中对通过测试的用户进行限制访问的方法
2015/07/23 Python
python dict.get()和dict['key']的区别详解
2016/06/30 Python
Python实现元素等待代码实例
2019/11/11 Python
完美解决pycharm 不显示代码提示问题
2020/06/02 Python
HTML5中FileReader接口使用方法实例详解
2017/08/26 HTML / CSS
悦木之源美国官网:Origins美国
2016/08/01 全球购物
财务部总监岗位职责
2014/03/12 职场文书
班级文化标语
2014/06/23 职场文书
安全伴我行演讲稿
2014/09/04 职场文书
机关作风建设自查报告
2014/10/22 职场文书
2015年电工工作总结
2015/04/10 职场文书
出纳试用期工作总结2015
2015/05/28 职场文书
师范生见习总结范文
2015/06/23 职场文书
催款函范本大全
2015/06/24 职场文书
游戏开发中如何使用CocosCreator进行音效处理
2021/04/14 Javascript
如何在Mac上通过docker配置PHP开发环境
2021/05/29 PHP