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 页面载入进度条实现代码
Feb 08 Javascript
基于jQuery的日期选择控件
Oct 27 Javascript
jQuery ajax BUG:object doesn't support this property or method
Jul 06 Javascript
jquery trigger伪造a标签的click事件取代window.open方法
Jun 23 Javascript
JavaScript代码因逗号不规范导致IE不兼容的问题
Feb 25 Javascript
内容滑动切换效果jquery.hwSlide.js插件封装
Jul 07 Javascript
JS函数多个参数默认值指定方法分析
Nov 28 Javascript
微信公众号菜单配置微信小程序实例详解
Mar 31 Javascript
用WebStorm进行Angularjs 2开发(环境篇:Windows 10,Angular-cli方式)
Dec 05 Javascript
iview实现select tree树形下拉框的示例代码
Dec 21 Javascript
vue elementui el-form rules动态验证的实例代码详解
May 23 Javascript
vue深度监听(监听对象和数组的改变)与立即执行监听实例
Sep 04 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中session变量的销毁
2014/02/27 PHP
浅谈PHP的反射机制
2016/12/15 PHP
javascript cookie操作类的实现代码小结附使用方法
2010/06/02 Javascript
自制基于jQuery的智能提示插件一枚
2011/02/18 Javascript
js禁止小键盘输入数字功能代码
2011/08/01 Javascript
JS事件Event元素(兼容IE,Firefox,Chorme)
2012/11/01 Javascript
JQuery 常用方法和事件详细介绍
2013/04/18 Javascript
jQuery 属性选择器element[herf*='value']使用示例
2013/10/20 Javascript
jquery内置验证(validate)使用方法示例(表单验证)
2013/12/04 Javascript
Jquery创建层显示标题和内容且随鼠标移动而移动
2014/01/26 Javascript
js判断为空Null与字符串为空简写方法
2014/02/24 Javascript
用jquery仿做发微博功能示例
2014/04/18 Javascript
javascript设计模式之解释器模式详解
2014/06/05 Javascript
js轮播图代码分享
2016/07/14 Javascript
纯JS实现可拖拽表单的简单实例
2016/09/02 Javascript
微信小程序 LOL 英雄介绍开发实例
2016/09/30 Javascript
基于React实现表单数据的添加和删除详解
2017/03/14 Javascript
使用jQuery ajaxupload插件实现无刷新上传文件
2017/04/23 jQuery
bootstrap多层模态框滚动条消失的问题
2017/07/21 Javascript
AngularJS使用$http配置对象方式与服务端交互方法
2018/08/13 Javascript
微信小程序文章详情页跳转案例详解
2019/07/09 Javascript
微信小程序渲染性能调优小结
2019/07/30 Javascript
python3操作mysql数据库的方法
2017/06/23 Python
windows下python之mysqldb模块安装方法
2017/09/07 Python
利用python编写一个图片主色转换的脚本
2017/12/07 Python
python-pyinstaller、打包后获取路径的实例
2019/06/10 Python
css3 border-radius属性详解
2017/07/05 HTML / CSS
CSS3 display知识详解
2015/11/25 HTML / CSS
斯德哥尔摩通票:Stockholm Pass
2018/01/09 全球购物
Java的五个基础面试题
2016/02/26 面试题
高级电工工作职责
2013/11/21 职场文书
学生党员的自我评价范文
2014/03/01 职场文书
老公出轨后的保证书
2015/05/08 职场文书
小学六一儿童节活动开幕词
2016/03/04 职场文书
干货!开幕词的写作方法
2019/04/02 职场文书
Django 如何实现文件上传下载
2021/04/08 Python