代碼如下:
$('#dialogDiv').dialog(
{
hide:true, //點擊關閉是隱藏,如果不加這項,關閉彈窗後再點就會出錯.
autoOpen:false,
height:380,
width:800,
modal:true, //蒙層(彈出會影響頁面大小)
title:'開標人',
overlay: {opacity: 0.5, background: "black" ,overflow:'auto'},
buttons:{
'確定':function(){
// 處理方法 addUser();
},
'取消':function(){
//關閉當前Dialog
$(this).dialog("close");
}
}
}
);
$('#addItems').click(function(){
loadPage('buildOpeningGroupAddOpering.htm','#dialogDiv'); //dialog記取頁面
//$(window.parent.document).find("#projectSpaceContent .show").height(600)//調整當前Iframe高度
$('#dialogDiv').data('title.dialog', '新增開標人').dialog('open'); //修改標題
return false;
})
function loadPage(path,id) {
$.get(path, function(data) {
// data = data.replace(/<script.*>.*<\/script>/ig,""); //移除script 標簽
data = data.replace(/<\/?link.*>/ig,""); //移除 link 標簽
data = data.replace(/<\/?html.*>/ig,""); //移除 html 標簽
data = data.replace(/<\/?body.*>/ig,""); //移除 body 標簽
data = data.replace(/<\/?head.*>/ig,""); //移除 head 標簽
data = data.replace(/<\/?!doctype.*>/ig,""); //移除 doctype 標簽
data = data.replace(/<title.*>.*<\/title>/ig,""); //移除 title 標簽
$(id).empty().html(data);//清空contentMain內容並加載html
});
}
//為彈出層增加關閉按鈕
$('.ui-dialog-buttonpane').show().empty();
$('<button>關閉</button>').click(function(){
$("#dialogDiv").dialog('close');
return false;
}).appendTo('.ui-dialog-buttonpane');
還是先看例子吧。另外如果要拖動、改變dialog的大小的話要加上ui.draggble.js和ui.resizable.js
代碼如下:
<!DOCTYPE html>
<html>
<head>
<link type="text/css" href="http://jqueryui.com/latest/themes/base/ui.all.css" rel="stylesheet" />
<script type="text/javascript" src="http://jqueryui.com/latest/jquery-1.3.2.js"></script>
<script type="text/javascript" src="http://jqueryui.com/latest/ui/ui.core.js"></script>
<script type="text/javascript" src="http://jqueryui.com/latest/ui/ui.dialog.js"></script>
<script>
$("#dialog").dialog({autoOpen:false,buttons:{"確定":function(){$(this).dialog("close");}},closeOnEscape:true,hide:"slide",modal:true,title:"對話 框"}).dialog("open");
</script>
<div id="dialog" title="Dialog Title">你是個豬頭!</div>
1 屬性
1.11 autoOpen ,這個屬性為true的時候dialog被調用的時候自動打開dialog窗口。當屬性為false的時候,一開始隱藏窗口,知道.dialog("open")的時候才彈出dialog窗口。默認為:true。
1.12 初始化例:請注意,$('.selector')是dialog 的類名,在本例中.selector=#dialoag,以後不再說明。
$('.selector').dialog({ autoOpen: false });
1.13 初始化後,得到和設置此屬性例:
//獲得
var autoOpen = $('.selector').dialog('option', 'autoOpen');
//設置
$('.selector').dialog('option', 'autoOpen', false);
1.21 bgiframe 默認為false ,When true, the bgiframe plugin will be used, to fix the issue in IE6 where select boxes show on top of other elements, regardless of zIndex. Requires including the bgiframe plugin. Future versions may not require a separate plugin.
在IE6下,讓後面那個灰屏蓋住select。
1.22 初始化例:
$('.selector').dialog({ bgiframe: true });
1.23 初始化後,得到和設置:
//獲取
var bgiframe = $('.selector').dialog('option', 'bgiframe');
//設置
$('.selector').dialog('option', 'bgiframe', true);
1.31 buttons 顯示一個按鈕,並寫上按鈕的文本,設置按鈕點擊函數。默認為{},沒有按鈕。
最上面的例子中已經有buttons屬性的用法,請注意。
1.32 初始化例:
$('.selector').dialog({ buttons: { "Ok": function() { $(this).dialog("close"); } } });
1.33 初始化後,得到和設置:
//獲取
var buttons = $('.selector').dialog('option', 'buttons');
//設置
$('.selector').dialog('option', 'buttons', { "Ok": function() { $(this).dialog("close"); } });
1.41 closeOnEscape 為true的時候,點擊鍵盤ESC鍵關閉dialog,默認為true;
1.42 初始化例:
$('.selector').dialog({ closeOnEscape: false });
1.43 初始化後,得到和設置:
//獲取
var closeOnEscape = $('.selector').dialog('option', 'closeOnEscape');
//設置
$('.selector').dialog('option', 'closeOnEscape', false);
1.51 dialogClass 類型將被添加到dialog,默認為空
1.52 初始化例:
$('.selector').dialog({ dialogClass: 'alert' });
1.53 初始化後,得到和設置:
//獲取
var dialogClass = $('.selector').dialog('option', 'dialogClass');
//設置
$('.selector').dialog('option', 'dialogClass', 'alert');
1.61 draggable、resizable : draggable是否可以使用標題頭進行拖動,默認為true,可以拖動;resizable是否可以改變dialog的大小,默認為true,可以改變大小。
1.62 初始化例:
$('.selector').dialog({ draggable: false,resizable:false });
1.63 初始化後,得到和設置:
//獲取
var draggable = $('.selector').dialog('option', 'draggable');
//設置
$('.selector').dialog('option', 'draggable', false);
1.71 width、height ,dialog的寬和高,默認為auto,自動。
1.72 初始化例:
$('.selector').dialog({ height: 530,width:200 });
1.73 初始化後,得到和設置:請參考1.63
1.81 maxWidth、maxHeight、minWidth、minHeight ,dialog可改變的最大寬度、最大高度、最小寬度、最小高度。maxWidth、maxHeight的默認為false,為不限。minWidth、minHeight的默認為150。要使用這些屬性需要ui.resizable.js 的支持。
1.82 初始化例:
$('.selector').dialog({ maxHeight: 400,maxWidth:600,minHeight:300,minWidth:300 });
1.83 初始化後,得到和設置:請參考1.63
1.91 hide、show ,當dialog關閉和打開時候的效果。默認為null,無效果
1.92 初始化例:最上面的實例中用到,請自己看吧。
1.93 初始化後,得到和設置:請參考1.63
1.101 modal,是否使用模式窗口,模式窗口打開後,頁面其他元素將不能點擊,直到關閉模式窗口。默認為false不是模式窗口。
1.102 初始化例:$('.selector').dialog({ modal: true });
1.103 初始化後,得到和設置:請參考1.63
1.111 title,dialog的標題文字,默認為空。
1.112 初始化例:見最上面的實例。1.113 初始化後,得到和設置:請參考1.63
1.121 position ,dialog的顯示位置:可以是'center', 'left', 'right', 'top', 'bottom',也可以是top和left的偏移量也可以是一個字符串數組例如['right','top']。
1.122 初始化例:$('.selector').dialog({ position: ['top','right'] }); 1.123 初始化後,得到和設置:請參考1.63
1.131 zIndex, dialog的zindex值,默認值為1000.
1.132 初始化例:$('.selector').dialog({ zIndex: 3999 }); 1.133 初始化後,得到和設置:請參考1.63
1.141 stack 默認值為true,當dialog獲得焦點是,dialog將在最上面。
1.142 初始化例:$('.selector').dialog({ stack: false }); 1.143 初始化後,得到和設置:請參考1.63
2 事件
2.11 beforeclose 類型dialogbeforeclose ,當dialog嘗試關閉的時候此事件將被觸發,如果返回false,那麼關閉將被阻止。
2.12 初始化例:$('.selector').dialog({
beforeclose: function(event, ui) { ... }
});
2.13 使用類型綁定此事件例:$('.selector').bind('dialogbeforeclose', function(event, ui) {
...
});
2.21 close 類型:dialogclose ,當dialog被關閉後觸發此事件。
2.22 初始化例:$('.selector').dialog({
close: function(event, ui) { ... }
});
2.23 使用類型綁定此事件例:$('.selector').bind('dialogclose', function(event, ui) {
...
});
2.3 open 類型:dialogopen ,當dialog打開時觸發。(篇幅有限,該省略的就省略了啊,初始化例和使用類型綁定事件可以向上參考。)
2.4 focus 類型:dialogfocus ,當dialog獲得焦點時觸發。
2.5 dragStart 類型:dragStart,當dialog拖動開始時觸發。
2.6 drag 類型:drag ,當dialog被拖動時觸發。
2.7 dragStop 類型:dragStop ,當dialog拖動完成時觸發。
2.8 resizeStart 類型:resizeStart ,當dialog開始改變窗體大小時觸發。
2.9 resize 類型:resize,當dialog被改變大小時觸發。
2.10 resizeStop 類型:resizeStop,當改變完大小時觸發。
3 方法
3.1 destroy ,我喜歡這個哦,摧毀地球。。。 例:.dialog( 'destroy' )
3.2 disable,dialog不可用,例:.dialog('disable');
3.3 enable,dialog可用,例,如3.2
3.4 close,open,關閉、打開dialog
3.5 option ,設置和獲取dialog屬性,例如:.dialog( 'option' , optionName , [value] ) ,如果沒有value,將是獲取。
3.6 isOpen ,如果dialog打開則返回true,例如:.dialog('isOpen')
3.7 moveToTop ,將dialog移到最上層,例如:.dialog( 'moveToTop' )