Когда вы создаете диалоговое окно jQuery UI, текущие версии (1.8. *) автоматически добавляют диалог к телу.
Так что если вы делаете:
$('<div>').dialog({modal: true})
это просто работает. Вы должны убедиться, что вы вызываете .remove()
с закрытым диалоговым окном, чтобы удалить новый элемент!
function myalert(title, text) {
var div = $('<div>').html(text).dialog({
title: title,
modal: true,
close: function() {
$(this).dialog('destroy').remove();
},
buttons: [{
text: "Ok",
click: function() {
$(this).dialog("close");
}}]
})
};
myalert("Test", "This is a test modal dialog");
См. http://jsfiddle.net/alnitak/G3GRZ/ для полной рабочей демонстрации.