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 相关文章推荐
有效的捕获JavaScript焦点的方法小结
Oct 08 Javascript
统计出现最多的字符次数的js代码
Dec 03 Javascript
JavaScript中的setUTCDate()方法使用详解
Jun 11 Javascript
正则表达式优化JSON字符串的技巧
Dec 24 Javascript
Hammer.js+轮播原理实现简洁的滑屏功能
Feb 02 Javascript
vue.js实现标签页切换效果
Jun 07 Javascript
Bootstrap Fileinput 4.4.7文件上传实例详解
Jul 25 Javascript
Iview Table组件中各种组件扩展的使用
Oct 20 Javascript
react-router4按需加载(踩坑填坑)
Jan 06 Javascript
微信小程序select下拉框实现效果
May 15 Javascript
Vue编写可显示周和月模式的日历 Vue自定义日历内容的显示
Jun 26 Javascript
序列化模块json代码实例详解
Mar 03 Javascript
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
《星际争霸II》全新指挥官斯台特曼现已上线
2020/03/08 星际争霸
PHP中将数组转成XML格式的实现代码
2011/08/08 PHP
PHP图片处理之使用imagecopyresampled函数裁剪图片例子
2014/11/19 PHP
PHP实现的观察者模式实例
2017/06/21 PHP
thinkPHP框架动态配置用法实例分析
2018/06/14 PHP
Avengerls vs KG BO3 第三场2.18
2021/03/10 DOTA
疯掉了,尽然有js写的操作系统
2007/04/23 Javascript
一个可以随意添加多个序列的tag函数
2009/07/21 Javascript
IE浏览器打印的页眉页脚设置解决方法
2009/12/08 Javascript
理解JavaScript中的对象 推荐
2011/01/09 Javascript
简单的JavaScript互斥锁分享
2014/02/02 Javascript
点击button获取text内容并改变样式的js实现
2014/09/09 Javascript
jQuery实现的登录浮动框效果代码
2015/09/26 Javascript
深入理解选择框脚本[推荐]
2016/12/13 Javascript
jQuery html表格排序插件tablesorter使用方法详解
2017/02/10 Javascript
JavaScript this绑定过程深入详解
2018/12/07 Javascript
微信小程序合法域名配置方法
2019/05/06 Javascript
Vue中Table组件行内右键菜单实现方法(基于 vue + AntDesign)
2019/11/21 Javascript
在博客园博文中添加自定义右键菜单的方法详解
2020/02/05 Javascript
使用python删除nginx缓存文件示例(python文件操作)
2014/03/26 Python
python在linux中输出带颜色的文字的方法
2014/06/19 Python
Python中return self的用法详解
2018/07/27 Python
python用opencv批量截取图像指定区域的方法
2019/01/24 Python
利用python numpy+matplotlib绘制股票k线图的方法
2019/06/26 Python
python利用re,bs4,requests模块获取股票数据
2019/07/29 Python
python小程序基于Jupyter实现天气查询的方法
2020/03/27 Python
全网最细 Python 格式化输出用法讲解(推荐)
2021/01/18 Python
CSS3截取字符串实例代码【推荐】
2018/06/07 HTML / CSS
西班牙在线光学:Visual-Click
2020/06/22 全球购物
市场营销专业大学生职业生涯规划文
2014/03/06 职场文书
英语教师岗位职责
2014/03/16 职场文书
云南省召开党的群众路线教育实践活动总结会议新闻稿
2014/10/21 职场文书
公司财务经理岗位职责
2015/04/08 职场文书
幼儿园大班教育随笔
2015/08/14 职场文书
适合青年人白手起家的创业项目分享
2019/08/16 职场文书
MySQL学习之基础操作总结
2022/03/19 MySQL