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 相关文章推荐
JQuery写动态树示例代码
Jul 31 Javascript
Javascript定义类(class)的三种方法详解
Mar 13 Javascript
js获取元素的外链样式的简单实现方法
Jun 06 Javascript
JavaScript面试开发常用的知识点总结
Aug 08 Javascript
ES6中的箭头函数实例详解
Apr 06 Javascript
vue.js获取数据库数据实例代码
May 26 Javascript
Vue中定义全局变量与常量的各种方式详解
Aug 23 Javascript
import与export在node.js中的使用详解
Sep 28 Javascript
react实现菜单权限控制的方法
Dec 11 Javascript
妙用缓存调用链实现JS方法的重载
Apr 30 Javascript
element中table高度自适应的实现
Oct 21 Javascript
手把手教你如何编译打包video.js
Dec 09 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
搜索和替换文件或目录的一个好类--很实用
2006/10/09 PHP
php 计划任务 检测用户连接状态
2012/03/29 PHP
php使用指定字符列表生成随机字符串的方法
2015/04/18 PHP
php微信开发之带参数二维码的使用
2016/08/03 PHP
ie和firefox中img对象区别的困惑
2006/12/27 Javascript
js下弹出窗口的变通
2007/04/18 Javascript
分享一个我自己写的ToolTip提示插件(附源码)
2013/01/20 Javascript
Jquery和JS用外部变量获取Ajax返回的参数值的方法实例(超简单)
2013/06/17 Javascript
开发中可能会用到的jQuery小技巧
2014/03/07 Javascript
jQuery实现的多选框多级联动插件
2014/05/02 Javascript
JS实现带提示的星级评分效果完整实例
2015/10/30 Javascript
js和jquery实现监听键盘事件示例代码
2020/06/24 Javascript
jQuery+PHP实现微信转盘抽奖功能的方法
2016/05/25 Javascript
jquery 判断selection range 是否在容器中的简单实例
2016/08/02 Javascript
javascript实现动态显示颜色块的报表效果
2017/04/10 Javascript
创建简单的node服务器实例(分享)
2017/06/23 Javascript
jQuery实现获取form表单内容及绑定数据到form表单操作分析
2018/07/03 jQuery
Vue CLI 2.x搭建vue(目录最全分析)
2019/02/27 Javascript
vue input输入框关键字筛选检索列表数据展示
2020/10/26 Javascript
python中实现定制类的特殊方法总结
2014/09/28 Python
人脸识别经典算法一 特征脸方法(Eigenface)
2018/03/13 Python
python 实现提取某个索引中某个时间段的数据方法
2019/02/01 Python
如何通过python实现人脸识别验证
2020/01/17 Python
解决python replace函数替换无效问题
2020/01/18 Python
python开发一款翻译工具
2020/10/10 Python
使用索引(Index)有哪些需要考虑的因素
2016/10/19 面试题
C#怎么让一个窗口居中显示?
2015/10/20 面试题
C#中类(class)与结构(struct)的异同
2013/11/03 面试题
物业管理求职自荐信
2013/09/25 职场文书
三八妇女节趣味活动方案
2014/08/23 职场文书
承诺书样本
2014/08/30 职场文书
2014年宣传部个人工作总结
2014/12/06 职场文书
单位病假条范文
2015/08/17 职场文书
男方家长婚礼答谢词
2015/09/29 职场文书
用Python爬虫破解滑动验证码的案例解析
2021/05/06 Python
pytorch训练神经网络爆内存的解决方案
2021/05/22 Python