我有<div id='A'>
中,我有一些信息</div>
保持在格UI對話框的內容關閉後對話框
然後我火命令
$('#A').dialog();
做的事情後,我關閉對話框
$('#A').dialog('close');
它關閉我的所有信息。但我希望它關閉,但我的信息保留在DIV中。
問題是,在關閉時,ui對話框也會刪除整個div,因此關閉後沒有任何內容。
我有<div id='A'>
中,我有一些信息</div>
保持在格UI對話框的內容關閉後對話框
然後我火命令
$('#A').dialog();
做的事情後,我關閉對話框
$('#A').dialog('close');
它關閉我的所有信息。但我希望它關閉,但我的信息保留在DIV中。
問題是,在關閉時,ui對話框也會刪除整個div,因此關閉後沒有任何內容。
'close'方法並沒有像指出的那樣去除div,它確實將它設置爲'display:none',並且選擇器在它是對話框時不能按預期工作;至少這是我發現的。您無法使用control + f查找它,因爲它沒有顯示。如果您使用Firebug或開發人員工具查看該頁面,則會看到它仍然存在。
試試這個:
var theA = $('#A');
theA.dialog();
//do ajax stuff here;
//some where else instead of closing the dialog
theA.dialog('destroy'); //returns the div to its pre-dialog state
theA.css('display','block');
我做了一個小提琴來證明我做了什麼,看看這是否正常工作。我使用了鎖定標誌來確保我在關閉的同時不會「對話」。但是我能夠做你正在談論的關於改變div的內容然後將其放回頁面的內容。我用摧毀而不是關閉顯示它回到頁面。
在撥弄我用一個文本框來改變div的內容,同時它在對話形式。然後在關閉處理程序中,我銷燬對話框,然後再次使其可見。
破壞和顯示塊解決了這個問題,謝謝;) – David
歡迎。我很高興它的工作。 –
它不應該刪除div。它會將它附加到body並從它的原始位置移除,但是如果您運行$('#A')。dialog('open');它應該再次打開。你有沒有附加到關閉事件或其他可能會修改該div的其他內容? – Syon
我通過Ajax更新div的內容。 – David
@Syon你對第二個dialog.open是正確的。我打開它並打開。但如果是這樣的話,爲什麼我在關閉它後看不到它? – David