bootstrap3 dialog 更强大、更灵活的模态框

网友投稿 471 2023-05-22


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 : BootsKqkRktrapDialog.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属性指向远程页面

target属性设置为dialog

不过,我们需要做一下封装。

第一步,页面加载时,我们需要让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 = $('

$message.html(response);// 把传回来的页面作为message返回

return $message;

},

title : title,

}

});

event.preventDefault();

return false;

});

},

});

⑤、ajax加载自定义页面弹出框

⑤和④类似,不过有些区别,下面只把区别列出来。

使用方法上,需要加上manipulating=”1”,指明为自定义页面,不使用bootstrap dialog的header、footer。

自定义页面

ajaxTodialog方法中增加对manipulating=1的处理。

if (manipulating == 1) {

ajaxDialog = new BootstrapDialog({

message : function(dialog) {

var $message = $('

$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 更强大、更灵活的模态框,希望对大家有所帮助,如果大家有任何疑问请给我留言,会及时回复大家的。在此也非常感谢大家对我们网站的支持!


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Java关键字finally_动力节点Java学院整理
下一篇:Eclipse 开发java 出现Failed to create the Java Virtual Machine错误解决办法
相关文章

 发表评论

暂时没有评论,来抢沙发吧~