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中字符串替换函数replace()方法与c# 、vb 替换有一点不同
Jun 25 Javascript
setInterval,setTimeout与jquery混用的问题
Apr 08 Javascript
js 有框架页面跳转(target)三种情况下的应用
Apr 09 Javascript
php+js实现倒计时功能
Jun 02 Javascript
JavaScript获取网页中第一个图片id的方法
Apr 03 Javascript
基于JavaScript实现快速转换文本语言(繁体中文和简体中文)
Mar 07 Javascript
JS获取url参数、主域名的方法实例分析
Aug 03 Javascript
js图片上传前预览功能(兼容所有浏览器)
Aug 24 Javascript
详解微信小程序 相对定位和绝对定位
May 11 Javascript
Angular实现搜索框及价格上下限功能
Jan 19 Javascript
详解Webpack loader 之 file-loader
Nov 07 Javascript
node.js基于socket.io快速实现一个实时通讯应用
Apr 23 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
Zend Guard一些常见问题解答
2008/09/11 PHP
PHP 模拟$_PUT实现代码
2010/03/15 PHP
PHP校验ISBN码的函数代码
2011/01/17 PHP
利用PHP实现短域名互转
2013/07/05 PHP
php制作基于xml的RSS订阅源功能示例
2017/02/08 PHP
你需要知道的JavsScript可以做什么?
2007/06/29 Javascript
jQuery EasyUI API 中文文档 - TreeGrid 树表格使用介绍
2011/11/21 Javascript
jquery text(),val(),html()方法区别总结
2013/11/04 Javascript
js生成动态表格并为每个单元格添加单击事件的方法
2014/04/14 Javascript
JavaScript中获取HTML元素值的三种方法
2016/06/20 Javascript
VUE2实现事件驱动弹窗示例
2017/10/21 Javascript
JS实现的将html转为pdf功能【基于浏览器端插件jsPDF】
2018/02/06 Javascript
Vue实现移动端页面切换效果【推荐】
2018/11/13 Javascript
如何去除富文本中的html标签及vue、react、微信小程序中的过滤器
2018/11/21 Javascript
Jquery滑动门/tab切换实现方法完整示例
2020/06/05 jQuery
[33:23]VG vs Pain 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
Python使用turtule画五角星的方法
2015/07/09 Python
Python使用Selenium+BeautifulSoup爬取淘宝搜索页
2018/02/24 Python
python机器学习之贝叶斯分类
2018/03/26 Python
Django 路由控制的实现代码
2018/11/08 Python
python利用插值法对折线进行平滑曲线处理
2018/12/25 Python
详解Python学习之安装pandas
2019/04/16 Python
Python使用MyQR制作专属动态彩色二维码功能
2019/06/04 Python
django多个APP的urls设置方法(views重复问题解决)
2019/07/19 Python
python中open函数的基本用法示例
2019/09/07 Python
python自动识别文本编码格式代码
2019/12/26 Python
Python常见反爬虫机制解决方案
2020/06/01 Python
如何写毕业求职自荐信
2013/11/06 职场文书
品牌推广策划方案
2014/05/28 职场文书
党员干部反四风对照检查材料思想汇报
2014/09/14 职场文书
诉讼代理人授权委托书
2014/10/11 职场文书
高三语文复习计划
2015/01/19 职场文书
幼儿园推普周活动总结
2015/05/07 职场文书
2015暑假社会调查报告
2015/07/13 职场文书
你离财务总监还有多远?速览CFO的岗位职责
2019/11/18 职场文书
SQL语法CONSTRAINT约束操作详情
2022/01/18 MySQL