用过bootstrap框架的同学们都知道,bootstrap自带的模态框用起来很不灵活,可谓鸡肋的很。但nakupanda开源作者封装了一个更强大、更灵活的模态框——bootstrap3-dialog。

一、源码下载
bootstrap3-dialog git下载地址
二、效果展示
1.error警告框
2.confirm确认选择框
3.Success提示框
4.ajax加载远程页面弹出框
5.ajax加载自定义页面弹出框
三、使用方法
bootstrap3-dialog的demo中已有很详细的介绍,但对于初学者来说是个麻烦,还要一个一个方法和注释去看。但我对这些常用的方法进行了新的封装,所以就简便了很多。
引入js和css文件我就不多说了,直接说使用方法。
①、error警告框
//弹出错误提示的登录框
$.showErr = function(str, func) {
// 调用show方法
BootstrapDialog.show({
type : BootstrapDialog.TYPE_DANGER,
title : '错误 ',
message : str,
size : BootstrapDialog.SIZE_SMALL,//size为小,默认的对话框比较宽
buttons : [ {// 设置关闭按钮
label : '关闭',
action : function(dialogItself) {
dialogItself.close();
}
} ],
// 对话框关闭时带入callback方法
onhide : func
});
};
这样封装后,需要弹出error警告框的时候直接使用$.showErr("当日没有资金日报")即可。
②、confirm确认选择框
$.showConfirm = function(str, funcok, funcclose) {
BootstrapDialog.confirm({
title : '确认',
message : str,
type : BootstrapDialog.TYPE_WARNING, // <-- Default value is
// BootstrapDialog.TYPE_PRIMARY
closable : true, // <-- Default value is false,点击对话框以外的页面内容可关闭
draggable : true, // <-- Default value is false,可拖拽
btnCancelLabel : '取消', // <-- Default value is 'Cancel',
btnOKLabel : '确定', // <-- Default value is 'OK',
btnOKClass : 'btn-warning', // <-- If you didn't specify it, dialog type
size : BootstrapDialog.SIZE_SMALL,
// 对话框关闭的时候执行方法
onhide : funcclose,
callback : function(result) {
// 点击确定按钮时,result为true
if (result) {
// 执行方法
funcok.call();
}
}
});
};
通过$.showConfirm(title, _doPost);进行调用。
③、Success提示框
$.showSuccessTimeout = function(str, func) {
BootstrapDialog.show({
type : BootstrapDialog.TYPE_SUCCESS,
title : '成功 ',
message : str,
size : BootstrapDialog.SIZE_SMALL,
buttons : [ {
label : '确定',
action : function(dialogItself) {
dialogItself.close();
}
} ],
// 指定时间内可自动关闭
onshown : function(dialogRef) {
setTimeout(function() {
dialogRef.close();
}, YUNM._set.timeout);
},
onhide : func
});
};
④、ajax加载远程页面弹出框
首先,我们先来看如何使用。
<a href="${ctx}/common/showSendMessage" rel="external nofollow" rel="external nofollow" target="dialog">点击打开</a>
对,就这一行代码即可!
不过,我们需要做一下封装。
第一步,页面加载时,我们需要让a标签执行ajaxTodialog方法。
$(function() {
// dialogs
if ($.fn.ajaxTodialog) {
$("a[target=dialog]").ajaxTodialog();
}
});
第二步,封装ajaxTodialog方法。
$.fn.extend({
ajaxTodialog : function() {
return this.click(function(event) {
var $this = $(this);
YUNM.debug("ajaxTodialog" + $this.selector);
var title = $this.attr("title") || $this.text();
var url=$this.attr("href");
$.ajax({
type : 'POST',
url : url,
cache : false,
success : function(response) {
ajaxDialog = BootstrapDialog.show({
message : function(dialog) {
var $message = $('<div></div>');
$message.html(response);// 把传回来的页面作为message返回
return $message;
},
title : title,
}
});
event.preventDefault();
return false;
});
},
});
⑤、ajax加载自定义页面弹出框
⑤和④类似,不过有些区别,下面只把区别列出来。
使用方法上,需要加上manipulating=”1”,指明为自定义页面,不使用bootstrap dialog的header、footer。
<a href="${ctx}/common/showSendMessage" rel="external nofollow" rel="external nofollow" target="dialog" manipulating="1">自定义页面</a>
ajaxTodialog方法中增加对manipulating=1的处理。
if (manipulating == 1) {
ajaxDialog = new BootstrapDialog({
message : function(dialog) {
var $message = $('<div></div>');
$message.html(response);
return $message;
},
// 找到自定义页面上x号进行绑定close事件
onshown : function(dialogRef) {
var $button = dialogRef.getModalContent().find('button[data-widget="remove"]');
$button.on('click', {
dialogRef : dialogRef
}, function(event) {
event.data.dialogRef.close();
});
},
});
ajaxDialog.realize();
ajaxDialog.getModalHeader().hide();// header不要
ajaxDialog.getModalFooter().hide();// footer也不要
ajaxDialog.getModalBody().css('padding', 0);// 无填充
ajaxDialog.open();
}
以上所述是小编给大家介绍的bootstrap3 dialog 更强大、更灵活的模态框,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
# bootstrap
# 模态框
# bootstrap3
# dialog
# 浅析BootStrap中Modal(模态框)使用心得
# Bootstrap模态框(modal)垂直居中的实例代码
# Bootstrap每天必学之模态框(Modal)插件
# BOOTSTRAP时间控件显示在模态框下面的bug修复
# 页面遮罩层
# 并且阻止页面body滚动。bootstrap模态框原理
# Bootstrap BootstrapDialog使用详解
# BootStrap+Angularjs+NgDialog实现模式对话框
# 封装的dialog插件 基于bootstrap模态对话框的简单扩展
# 弹出
# 自定义
# 对话框
# 加载
# 模态
# 小编
# 更强大
# 更灵活
# 我就
# 是个
# 在此
# 下载地址
# 说了
# 已有
# 我对
# 不多
# 去看
# 同学们
# 给大家
# 用过
相关文章:
三星网站视频制作教程下载,三星w23网页如何全屏?
制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?
常州企业网站制作公司,全国继续教育网怎么登录?
php条件判断怎么写_ifelse和switchcase的使用区别【对比】
详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)
官网自助建站系统:SEO优化+多语言支持,快速搭建专业网站
建站之星导航如何优化提升用户体验?
学校建站服务器如何选型才能满足性能需求?
如何解决VPS建站LNMP环境配置常见问题?
网站海报制作教学视频教程,有什么免费的高清可商用图片网站,用于海报设计?
如何选择PHP开源工具快速搭建网站?
制作充值网站的软件,做人力招聘为什么要自己交端口钱?
如何快速生成凡客建站的专业级图册?
宿州网站制作公司兴策,安徽省低保查询网站?
建站之星Pro快速搭建教程:模板选择与功能配置指南
C++如何将C风格字符串(char*)转换为std::string?(代码示例)
建站主机数据库如何配置才能提升网站性能?
建站之星官网登录失败?如何快速解决?
如何选购建站域名与空间?自助平台全解析
成都品牌网站制作公司,成都营业执照年报网上怎么办理?
建站之星在线客服如何快速接入解答?
如何做静态网页,sublimetext3.0制作静态网页?
Dapper的Execute方法的返回值是什么意思 Dapper Execute返回值详解
微信小程序制作网站有哪些,微信小程序需要做网站吗?
如何快速搭建高效香港服务器网站?
网站微信制作软件,如何制作微信链接?
如何通过远程VPS快速搭建个人网站?
如何在服务器上配置二级域名建站?
网站app免费制作软件,能免费看各大网站视频的手机app?
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
相册网站制作软件,图片上的网址怎么复制?
如何快速查询域名建站关键信息?
如何高效利用200m空间完成建站?
建站之星备案流程有哪些注意事项?
如何用VPS主机快速搭建个人网站?
怀化网站制作公司,怀化新生儿上户网上办理流程?
官网网站制作腾讯审核要多久,联想路由器newifi官网
如何快速配置高效服务器建站软件?
如何解决ASP生成WAP建站中文乱码问题?
制作电商网页,电商供应链怎么做?
如何通过商城免费建站系统源码自定义网站主题?
如何用花生壳三步快速搭建专属网站?
建站之星伪静态规则如何设置?
建站之星如何助力网站排名飙升?揭秘高效技巧
测试制作网站有哪些,测试性取向的权威测试或者网站?
建站之星后台密码如何安全设置与找回?
大连网站设计制作招聘信息,大连投诉网站有哪些?
建站之星安装提示数据库无法连接如何解决?
建站之星代理平台如何选择最佳方案?
html制作网站的步骤有哪些,iapp如何添加网页?
*请认真填写需求信息,我们会在24小时内与您取得联系。