jquery-ui基础的弹出框

基于jquery-ui动态四种弹出框。

>alert框

>confirm框

>模态dialog框


jquery-mybox.js

// JavaScript Document
jQuery.extend(jQuery, { 
	// jQuery UI alert弹出提示 
	jqalert: function(text, title, fn) { 
		var html = 
			'<div class="dialog" id="dialog-message">' + 
			' <p>' + 
			//' <span class="ui-icon ui-icon-circle-check" style="float: left; margin: 0 7px 0 0;"></span>' + text + 
			' <span style="float: left; margin: 0 7px 0 0;"></span>' + text + 
			' </p>' + 
			'</div>'; 
			
		$(html).dialog({
			resizable: false,
			modal: true,
			show: {
				effect: 'fade',
				duration: 300
			},
			open: function ()
			{
				//$(this).load('../test.html');
			},
			title: title || "提示信息",
			buttons: {
				"确定": function(){
					var dlg = $(this).dialog("close"); 
					fn && fn.call(dlg); 
				}
			},
			close:function(event, ui){
				$(this).dialog("destroy");
				$("#dialog-message").remove();
			}
		});
	},
	// jQuery UI confirm弹出确认提示 
	jqconfirm: function(text, title, fn1, fn2) { 
		var html = 
		'<div class="dialog" id="dialog-confirm">' + 
		' <p>' + 
		//' <span class="ui-icon ui-icon-alert" style="float: left; margin: 0 7px 20px 0;"></span>' + text + 
		' <span style="float: left; margin: 0 7px 20px 0;"></span>' + text + 
		' </p>' + 
		'</div>'; 
		return $(html).dialog({ 
			//autoOpen: false, 
			resizable: false, 
			modal: true, 
			show: { 
				effect: 'fade', 
				duration: 300 
			}, 
			title: title || "提示信息", 
			buttons: { 
				"确定": function() { 
					var dlg = $(this).dialog("close"); 
					fn1 && fn1.call(dlg, true); 
				}, 
				"取消": function() { 
					var dlg = $(this).dialog("close"); 
					fn2 && fn2(dlg, false); 
				} 
			},
			close:function(event, ui){
				$(this).dialog("destroy");
				$("#dialog-confirm").remove();
			}
		}); 
	}, 
	// jQuery UI 模态dialog框
	jqmybox:{
		show:function(myurl,mytitle,myheight,mywidth) { 
			var html = '<div class="dialog" id="dialog-mybox"></div>'; 
			$(html).dialog({
				resizable: false,
				height: myheight,
      	width: mywidth,
				modal: true,
				show: {effect: 'fade',duration: 300},
				open: function(){$(this).load(myurl);},
				title: mytitle,
				//buttons: dlgbtns,
				close:function(event, ui){
					$(this).dialog("destroy");
					$("#dialog-mybox").remove();
				}
			});
		},
		hide:function(){
			$("#dialog-mybox").dialog("close");
		}
	},
})



Bootstrap Table在jQuery UI的对话框或模态框中可能会遇到分页条显示错误的问题,主要是因为这两种插件各自处理布局和样式,它们可能会有冲突。解决这个问题通常需要对CSS进行一些定制: 1. **隔离样式**:首先尝试将Bootstrap Table的CSS样式与jQuery UI的样式隔离开,避免直接覆盖。你可以通过`.ui-widget`选择器来设置样式,或者创建一个新的类来指定表格。 ```css .ui-widget .bootstrap-table .pagination { margin-top: initial; /* 或者自定义你需要的距离 */ } ``` 2. **调整定位**:由于对话框内部可能有不同的布局,你需要检查并调整分页条的容器位置。例如,可以试试将`.bootstrap-table`的`data-pagination-style`属性设置为`"static"`,然后手动放置分页组件。 ```html <table id="myTable" data-pagination="true" data-pagination-style="static"> <!-- ... --> </table> <div class="ui-paginator ui-widget-header ui-corner-all" style="position: absolute; bottom: 0;"></div> ``` 3. **事件绑定**:如果你在初始化表格后动态添加到了对话框里,记得重新初始化Bootstrap Table,以便它能够适应新的DOM环境。 4. **兼容性检查**:确保Bootstrap Table和jQuery UI版本之间不存在已知的冲突。更新到最新版,或者查阅文档看看是否有针对这种场景的官方解决方案。 如果以上步骤无效,你还可以考虑使用jQuery UI的`.dialog()`或其他插件提供的API,直接控制表格元素的布局和显示,避免嵌套使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值