Я работал над проектом ASP.net, который использует пользовательские «модальные диалоги». Я использую пугающие кавычки, потому что я понимаю, что «модальное диалоговое окно» - это просто div в моем html-документе, который настроен так, чтобы отображаться «поверх» остальной части документа, и не является модальным диалоговым окном в истинном смысле этого слова. .
Во многих частях веб-сайта у меня есть код, который выглядит следующим образом:
var warning = 'Are you sure you want to do this?';
if (confirm(warning)) {
// Do something
}
else {
// Do something else
}
Это нормально, но было бы неплохо, чтобы диалог подтверждения соответствовал стилю остальной части страницы.
Однако, поскольку это не настоящий модальный диалог, я думаю, что мне нужно написать что-то вроде этого: (я использую jQuery-UI в этом примере)
<div id='modal_dialog'>
<div class='title'>
</div>
<input type='button' value='yes' id='btnYes' />
<input type='button' value='no' id='btnNo' />
</div>
<script>
function DoSomethingDangerous() {
var warning = 'Are you sure you want to do this?';
$('.title').html(warning);
var dialog = $('#modal_dialog').dialog();
function Yes() {
dialog.dialog('close');
// Do something
}
function No() {
dialog.dialog('close');
// Do something else
}
$('#btnYes').click(Yes);
$('#btnNo').click(No);
}
Это хороший способ выполнить то, что я хочу, или есть лучший способ?