AngularJS中使用ngModal模态框实例


Posted in Javascript onMay 27, 2017

在AngularJS中使用模态框需要引用的文件:

  1. angular.js 1.5.5
  2. ui.bootstrap-tpls.js 0.11.2
  3. bootstrap.css 3.3.7

需要注意版本要一致,高版本的不支持这种方法,会出错

将需要弹出的模态框的内容写在 script 标签中,指明属性,放在页面中

<script type="text/ng-template" id="modal.html"> 
<div>
  <div class="modal-header">
    <h3 class="modal-title" align="center">
      标题信息
    </h3>
  </div>
  <div class="modal-body">
    <div align="center">
      模态框内容
    </div>
  </div>
  <div class="modal-footer">
    <button class="btn btn-primary" ng-click="ok()">
      确认
    </button>
    <button class="btn btn-warning" ng-click="cancel()">
      退出
    </button>
  </div>
</div>
</script>

在App和Controller中注入模态框

var app = angular.module('app', ['ui.bootstrap']);
app.controller('modalController', function($scope, $rootScope,$modal) {
  $scope.openModel = function() {
      var modalInstance = $modal.open({
        templateUrl : 'modal.html',//script标签中定义的id
        controller : 'modalCtrl',//modal对应的Controller
        resolve : {
          data : function() {//data作为modal的controller传入的参数
             return data;//用于传递数据
          }
        }
      })
    }
}

//模态框对应的Controller
app.controller('modalCtrl', function($scope, $modalInstance, data) {
  $scope.data= data;

  //在这里处理要进行的操作  
  $scope.ok = function() {
    $modalInstance.close();
  };
  $scope.cancel = function() {
    $modalInstance.dismiss('cancel');
  }
});

添加事件触发显示模态框

<button ng-click="openModal()">打开模态框</button>

html

<!DOCTYPE html>
<html ng-app="app" ng-controller="modalController">
<head>
  <title>ng-model模态框</title>
</head>
<link href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="external nofollow" rel="stylesheet">
<body>
<button ng-click="openModal()">打开模态框</button>

<script type="text/ng-template" id="modal.html"> 
  <div>
    <div class="modal-header">
      <h3 class="modal-title" align="center">
        标题信息
      </h3>
    </div>
    <div class="modal-body">
      <div align="center">
        模态框内容 <br>
        {{data}}
      </div>
    </div>
    <div class="modal-footer">
      <button class="btn btn-primary" ng-click="ok()">
        确认
      </button>
      <button class="btn btn-warning" ng-click="cancel()">
        退出
      </button>
    </div>
  </div>
</script>

<script src="https://cdn.bootcss.com/angular.js/1.5.5/angular.min.js"></script>
<script src="https://cdn.bootcss.com/angular-ui-bootstrap/0.11.2/ui-bootstrap-tpls.min.js"></script>

<script type="text/javascript">
  var app = angular.module('app', ['ui.bootstrap']);
  app.controller('modalController', function($scope, $rootScope, $modal) {
    var data = "通过modal传递的数据";
    $scope.openModal = function() {
        var modalInstance = $modal.open({
          templateUrl : 'modal.html',//script标签中定义的id
          controller : 'modalCtrl',//modal对应的Controller
          resolve : {
            data : function() {//data作为modal的controller传入的参数
               return data;//用于传递数据
            }
          }
        })
      }
  })
   //模态框对应的Controller
   app.controller('modalCtrl', function($scope, $modalInstance, data) {
     $scope.data= data;

     //在这里处理要进行的操作
     $scope.ok = function() {
       $modalInstance.close();
     };
     $scope.cancel = function() {
       $modalInstance.dismiss('cancel');
     }
  });
</script>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Wordpress ThickBox 点击图片显示下一张图的修改方法
Dec 11 Javascript
firefox浏览器不支持innerText的解决方法
Aug 07 Javascript
JQuery判断HTML元素是否存在的两种解决方法
Dec 26 Javascript
jquery使用jxl插件导出excel示例
Apr 14 Javascript
Blocksit插件实现瀑布流数据无限( 异步)加载
Jun 20 Javascript
Three.js学习之文字形状及自定义形状
Aug 01 Javascript
基于Bootstrap和jQuery构建前端分页工具实例代码
Nov 23 Javascript
利用node.js本地搭建HTTP服务器
Apr 19 Javascript
React如何利用相对于根目录进行引用组件详解
Oct 09 Javascript
select标签设置默认选中的选项方法
Mar 02 Javascript
javascript中的相等操作符(==与===区别)
Dec 21 Javascript
Vue+scss白天和夜间模式切换功能的实现方法
Jan 05 Vue.js
angularJS模态框$modal实例代码
May 27 #Javascript
AngularJS入门教程二:在路由中传递参数的方法分析
May 27 #Javascript
AngularJS入门教程一:路由用法初探
May 27 #Javascript
Angular 4环境准备与Angular cli创建项目详解
May 27 #Javascript
BootStrap Table 后台数据绑定、特殊列处理、排序功能
May 27 #Javascript
Angularjs自定义指令Directive详解
May 27 #Javascript
react-redux中connect()方法详细解析
May 27 #Javascript
You might like
劣质的PHP代码简化
2010/02/08 PHP
使用Apache的htaccess防止图片被盗链的解决方法
2013/04/27 PHP
php语法检查的方法总结
2019/01/21 PHP
jquery插件jbox使用iframe关闭问题
2009/02/09 Javascript
javascript开发技术大全 第4章 直接量与字符集
2011/07/03 Javascript
通过url查找a元素并点击
2014/04/09 Javascript
浅谈jQuery的offset()方法及示例分享
2015/07/17 Javascript
jQuery实现带渐显效果的人物多级关系图代码
2015/10/16 Javascript
深入解析JavaScript编程中的this关键字使用
2015/11/09 Javascript
vue.js实例todoList项目
2017/07/07 Javascript
Angular.js中$resource高大上的数据交互详解
2017/07/30 Javascript
利用Three.js如何实现阴影效果实例代码
2017/09/26 Javascript
angularjs实现时间轴效果的示例代码
2017/11/29 Javascript
详解Vue.js iview实现树形权限表(可扩展表)
2018/09/30 Javascript
Vue 事件处理操作实例详解
2019/03/05 Javascript
JS异步错误捕获的一些事小结
2019/04/26 Javascript
Vue+Express实现登录注销功能的实例代码
2019/05/05 Javascript
javascript设计模式 ? 解释器模式原理与用法实例分析
2020/04/17 Javascript
[03:06]2018年度CS GO最具人气解说-完美盛典
2018/12/16 DOTA
python实现的重启关机程序实例
2014/08/21 Python
利用python获取Ping结果示例代码
2017/07/06 Python
Python 变量类型详解
2018/10/10 Python
浅谈python中str字符串和unicode对象字符串的拼接问题
2018/12/04 Python
浅析Python 中几种字符串格式化方法及其比较
2019/07/02 Python
Python使用monkey.patch_all()解决协程阻塞问题
2020/04/15 Python
跨域修改iframe页面内容详解
2019/10/31 HTML / CSS
美国在线乐器和设备商店:Musician’s Friend
2018/07/06 全球购物
电工工作职责范本
2014/02/22 职场文书
毕业生就业意向书
2014/04/01 职场文书
人大代表选举标语
2014/10/07 职场文书
退货证明模板
2015/06/23 职场文书
python实现简单倒计时功能
2021/04/21 Python
JavaScript 中for/of,for/in 的详细介绍
2021/11/17 Javascript
2022漫威和DC电影上映作品
2022/04/05 欧美动漫
Python实现视频自动打码的示例代码
2022/04/08 Python
python处理json数据文件
2022/04/11 Python