2010-08-25 72 views
20

刪除jQuery UI對話框上關閉按鈕的最佳方式是什麼?刪除jQuery UI對話框小部件上關閉按鈕的最佳方法?

我不希望人們能夠關閉對話框。

我被處理覆蓋其上的代碼角:

closeOnEscape: false, 
beforeclose: function (event, ui) { return false; } 

我想沒有需要編寫腳本來虎視眈眈的關閉按鈕的類/ ID,然後手工將其隱藏。我寧願不手動更改CSS,因爲對話框可能有需要關閉按鈕的情況。

我寧願做它的對話框配置莫名其妙,但我無法弄清楚如何做到這一點或對話框根本不允許它。

關於如何配置對話框的任何建議?

+1

的可能重複[上jQueryUI的對話框中刪除關閉按鈕?](http://stackoverflow.com/questions/896777/remove-close-button- on-jqueryui-dialog) – 2013-05-21 12:00:50

回答

54

我發現這是一個很好的解決方案

$("#myDialogID").dialog({ 
    closeOnEscape: false, 
    beforeClose: function (event, ui) { return false; }, 
    dialogClass: "noclose" 
}); 

不改變現有的風格,而不是添加一個新的位:

.noclose .ui-dialog-titlebar-close 
{ 
    display:none; 
} 

添加類結束了一個相當巧妙的方法,如我將對話框分類爲不能關閉的對話框。

+1

+1也是我的。真的很棒的解決方案! – NullPointer 2013-07-31 11:29:40

+0

這是一個非常優雅的解決方案。非常感激! – 2014-01-13 09:35:35

+1

好編輯@bishop,在撰寫「beforeclose」的時候,仍然在ye'olden天踢腳:-) https://github.com/jquery/jquery-ui/commit/b42125af4350eda14a6b15bb71f8dd336858fbd8/ – 2014-09-09 09:19:34

2

我找到了另一種解決方案,爲我工作:

$("#divID").dialog({ 
    closeOnEscape: false, 
    open: function(event, ui) { $(".ui-dialog-titlebar-close").hide(); } 
});