用过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模态对话框的简单扩展
# 弹出
# 自定义
# 对话框
# 加载
# 模态
# 小编
# 更强大
# 更灵活
# 我就
# 是个
# 在此
# 下载地址
# 说了
# 已有
# 我对
# 不多
# 去看
# 同学们
# 给大家
# 用过
相关文章:
表情包在线制作网站免费,表情包怎么弄?
云南网站制作公司有哪些,云南最好的招聘网站是哪个?
道歉网站制作流程,世纪佳缘致歉小吴事件,相亲网站身份信息伪造该如何稽查?
大连网站制作公司哪家好一点,大连买房网站哪个好?
定制建站哪家更专业可靠?推荐榜单揭晓
微信小程序 input输入框控件详解及实例(多种示例)
如何快速搭建高效服务器建站系统?
c# await 一个已经完成的Task会发生什么
太原网站制作公司有哪些,网约车营运证查询官网?
建站之星上传入口如何快速找到?
如何快速生成可下载的建站源码工具?
香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化
Android使用GridView实现日历的简单功能
如何在云主机快速搭建网站站点?
如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?
交易网站制作流程,我想开通一个网站,注册一个交易网址,需要那些手续?
c# Task.ConfigureAwait(true) 在什么场景下是必须的
c# F# 的 MailboxProcessor 和 C# 的 Actor 模型
胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?
安云自助建站系统如何快速提升SEO排名?
如何通过商城免费建站系统源码自定义网站主题?
网站制作多少钱一个,建一个论坛网站大约需要多少钱?
如何通过老薛主机一键快速建站?
高性价比服务器租赁——企业级配置与24小时运维服务
建站之星手机一键生成:多端自适应+小程序开发快速建站指南
如何安全更换建站之星模板并保留数据?
学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?
免费制作海报的网站,哪位做平面的朋友告诉我用什么软件做海报比较好?ps还是cd还是ai这几个软件我都会些我是做网页的?
如何通过西部建站助手安装IIS服务器?
如何优化Golang Web性能_Golang HTTP服务器性能提升方法
PHP 500报错的快速解决方法
Swift中switch语句区间和元组模式匹配
建站主机选购指南:核心配置与性价比推荐解析
建站主机选择指南:服务器配置与SEO优化实战技巧
建站之星安装失败:服务器环境不兼容?
如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南
模具网站制作流程,如何找模具客户?
建站之星安装步骤有哪些常见问题?
深入理解Android中的xmlns:tools属性
标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?
智能起名网站制作软件有哪些,制作logo的软件?
如何通过云梦建站系统实现SEO快速优化?
如何通过.red域名打造高辨识度品牌网站?
,有什么在线背英语单词效率比较高的网站?
如何在云主机上快速搭建网站?
小说建站VPS选用指南:性能对比、配置优化与建站方案解析
英语简历制作免费网站推荐,如何将简历翻译成英文?
成都响应式网站开发,dw怎么把手机适应页面变成网页?
C#如何在一个XML文件中查找并替换文本内容
建站之星后台搭建步骤解析:模板选择与产品管理实操指南
*请认真填写需求信息,我们会在24小时内与您取得联系。