BootStrap+Angularjs+NgDialog实现模式对话框


Posted in Javascript onAugust 24, 2016

本篇文章主要介绍了"angularjs+bootstrap+ngDialog实现模式对话框",对于Javascript教程感兴趣的同学可以参考一下: 在完成一个后台管理系统时,需要用表显示注册用户的信息。但是用户地址太长了,不好显示。所以想做一个模式对话框,点击详细地址按钮时,弹出对话框,显示地址。

效果如下图:

BootStrap+Angularjs+NgDialog实现模式对话框

BootStrap+Angularjs+NgDialog实现模式对话框

通过查阅资料,选择使用ngDialog来实现,ngDialog是一个用于Angular.js应用的模式对话框和弹出窗口。ngDialog非常小(?2K),拥有简约的API,通过主题高度可定制的,具有唯一的依赖Angular.js。

ngDialog github地址: https://github.com/likeastore/ngDialog

ngDialog Demo : http://likeastore.github.io/ngDialog/

首先引入需要的ngdialog的js和css文件。

可通过CDN引入

<span style="font-size:18px;">//cdnjs.cloudflare.com/ajax/libs/ng-dialog/0.3.7/css/ngDialog.min.css
//cdnjs.cloudflare.com/ajax/libs/ng-dialog/0.3.7/css/ngDialog-theme-default.min.css
//cdnjs.cloudflare.com/ajax/libs/ng-dialog/0.3.7/css/ngDialog-theme-plain.min.css
//cdnjs.cloudflare.com/ajax/libs/ng-dialog/0.3.7/js/ngDialog.min.js</span>

在user.js里的controller中注入依赖

<span style="font-size:18px;">var userControllers = angular.module('userControllers',['ngDialog']);
userControllers.controller('userController',['$scope','$http','ngDialog',function($scope,$http, ngDialog){
$scope.name = 'user';
$scope.user = "";
$scope.address = "";
//获取用户信息
$http.get('http://localhost:3000/users').success(function(data) {
$scope.user = data;
console.log($scope.user);
});
//点击详细地址按钮时,跳出模式对话框
$scope.clickToAddress = function (address) {
$scope.address = address;
ngDialog.open({ template: 'views/test.html',//模式对话框内容为test.html
className: 'ngdialog-theme-plain',
scope:$scope //将scope传给test.html,以便显示地址详细信息
});
};
}])</span>

test.html(读取scope中的address并显示,表格样式采用bootstrap )

<span style="font-size:18px;"><table class="table">
<thead>
<tr>
<th>
收件人姓名
</th>
<td>
{{address.name}}
</td>
</tr>
<tr>
<th>
收件地址
</th>
<td>
{{address.content}}
</td>
</tr>
<tr>
<th>
手机号
</th>
<td>
{{address.phone}}
</td>
</tr>
</thead>
</table></span>

user.html (显示用户的信息,当地址不为空时,显示详细地址按钮,并点击按钮时,调用controller中的clickToAddress函数)

<span style="font-size:18px;"><div>
<div class="panel panel-warning">
<div class="panel-heading">
用户管理
</div>
<div class="row">
<div class="col-lg-8"></div>
<div class="col-lg-4">
<div class="input-group">
<input type="text" class="form-control" placeholder="Search for..." ng-model='search'>
<span class="input-group-btn">
<button class="btn btn-default" type="button">Go!</button>
</span>
</div>
</div>
</div>
<table class="table">
<thead>
<th>姓名</th>
<th>余额 <span class="glyphicon glyphicon-flash" aria-hidden="true"> </span></th>
<th>头像</th>
<th>默认地址</th>
<th>操作</th>
</thead>
<tbody>
<tr ng-repeat="user in user | filter : search" >
<td>{{user.userName}}</td>
<td>{{user.residualPayment}}</td>
<td ng-if="user.url != 'undefined' ">{{user.url}}</td>
<td ng-if="user.url == 'undefined' ">系统默认头像</td>
<td ng-if="user.address.length == 0 ">暂无默认地址</td>
<td ng-if="user.address.length != 0"ng-repeat="address in user.address " ng-click="clickToAddress(address)">
<button type="button" class="btn btn-info navbar-btn">详细地址</button>
</td>
<td>
<button type="button" class="btn btn-warning navbar-btn" ng-click="remove(user._id)">删除</button>
</td>
</tr>
</tbody>
</table>
</div>
</div></span>

以上所述是小编给大家介绍的BootStrap+Angularjs+NgDialog实现模式对话框,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
理解JavaScript变量作用域更轻松
Oct 25 Javascript
js动态创建及移除div的方法
Jun 03 Javascript
JavaScript中的定时器之Item23的合理使用
Oct 30 Javascript
纯js实现瀑布流布局及ajax动态新增数据
Apr 07 Javascript
jQuery 判断是否包含在数组中Array[]的方法
Aug 03 Javascript
js实现鼠标移动到图片产生遮罩效果
Oct 21 Javascript
vue组件父子间通信之综合练习(聊天室)
Nov 07 Javascript
web前端vue filter 过滤器
Jan 12 Javascript
koa上传excel文件并解析的实现方法
Aug 09 Javascript
vue.js template模板的使用(仿饿了么布局)
Aug 13 Javascript
js基础之事件捕获与冒泡原理
Oct 09 Javascript
微信小程序实现天气预报功能(附源码)
Dec 10 Javascript
JS for...in 遍历语句用法实例分析
Aug 24 #Javascript
用JS中split方法实现彩色文字背景效果实例
Aug 24 #Javascript
BootStrap table表格插件自适应固定表头(超好用)
Aug 24 #Javascript
BootStrap的table表头固定tbody滚动的实例代码
Aug 24 #Javascript
JS基于HTML5的canvas标签实现炫目的色相球动画效果实例
Aug 24 #Javascript
Javascript中indexOf()和lastIndexOf应用方法实例
Aug 24 #Javascript
详解Bootstrap的iCheck插件checkbox和radio
Aug 24 #Javascript
You might like
php设计模式 FlyWeight (享元模式)
2011/06/26 PHP
PHP获取用户的浏览器与操作系统信息的代码
2012/09/04 PHP
php的GD库imagettftext函数解决中文乱码问题
2015/01/24 PHP
自制PHP框架之路由与控制器
2017/05/07 PHP
PHP面向对象类型约束用法分析
2019/06/12 PHP
PHP实现与java 通信的插件使用教程
2019/08/11 PHP
关于query Javascript CSS Selector engine
2013/04/12 Javascript
jquery中加载图片自适应大小主要实现代码
2013/08/23 Javascript
jQuery链使用指南
2015/01/20 Javascript
JQuery使用$.ajax和checkbox实现下次不在通知功能
2015/04/16 Javascript
js实现点击文本框显示日期选择器特效代码分享
2020/05/21 Javascript
JavaScript编程的单例设计模讲解
2015/11/10 Javascript
详解用node.js实现简单的反向代理
2017/06/26 Javascript
简单实现js上传文件功能
2017/08/21 Javascript
jquery点击回车键实现登录效果并默认焦点的方法
2018/03/09 jQuery
Vue 项目中遇到的跨域问题及解决方法(后台php)
2018/03/28 Javascript
微信小程序 自定义弹窗实现过程(附代码)
2019/12/05 Javascript
微信小程序背景音乐开发详解
2019/12/12 Javascript
跟老齐学Python之编写类之三子类
2014/10/11 Python
Python实现七彩蟒蛇绘制实例代码
2018/01/16 Python
python解析html提取数据,并生成word文档实例解析
2018/01/22 Python
python3+PyQt5使用数据库表视图
2018/04/24 Python
python实现C4.5决策树算法
2018/08/29 Python
详解python Todo清单实战
2018/11/01 Python
对python模块中多个类的用法详解
2019/01/10 Python
关于tensorflow的几种参数初始化方法小结
2020/01/04 Python
python实现定时发送邮件到指定邮箱
2020/12/23 Python
CSS3实现超酷的黑猫警长首页
2016/04/26 HTML / CSS
HTML5使用Audio标签实现歌词同步的效果
2016/03/17 HTML / CSS
Farfetch香港官网:汇集全球时尚奢侈品购物平台
2017/11/26 全球购物
JD Sports芬兰:英国领先的运动鞋和运动服饰零售商
2018/11/16 全球购物
初中英语教学反思
2014/01/25 职场文书
《月迹》教学反思
2014/02/19 职场文书
师恩难忘教学反思
2014/04/27 职场文书
安全责任书怎么写
2014/07/28 职场文书
2015教师个人年度工作总结
2015/10/23 职场文书