#javascript #jquery #jquery-ui #dialog #jquery-ui-dialog
#javascript #jquery #jquery-ui #диалог #jquery-ui-dialog
Вопрос:
Я создаю небольшое приложение jquery. Мне нужно, чтобы появилось несколько полей подтверждения. Однако я не хочу добавлять элемент к телу только для того, чтобы открыть диалоговое окно. Есть ли способ избежать этого? Просто вызвать диалоговое окно и передать аргументы, такие как заголовок, текст и параметры?
Ответ №1:
При создании диалогового окна пользовательского интерфейса jQuery текущие версии (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 для полной рабочей демонстрации.
Ответ №2:
Просто сделай это:
$('<div>My dialog text.</div>').dialog({ modal: true });