Я использую Jquery Диалог с ajax. Я пытаюсь открыть всплывающее диалоговое окно после того, как кнопка нажата (ajax. Всегда) и затем заменена другим диалоговым окном после этого (ajax .done).
У меня есть следующий код:
$("#dialog").dialog({
autoOpen: false,
modal: true,
show: "blind",
hide: "explode",
resizable: false,
draggable: true,
closeOnEscape:false,
width: 180,
height: 200,
open: function(event, ui) { $(".ui-dialog-titlebar-close").hide(); }
});
$("#dialog2").dialog({
autoOpen: false,
modal: true,
show: "blind",
hide: "explode",
resizable: false,
draggable: true,
closeOnEscape:false,
width: 180,
height: 200,
open: function(event, ui) { $(".ui-dialog-titlebar-close").hide(); }
});
.....
$.ajax({
url: '****',
type: 'POST',
data: values,
})
.done(function() {
$("#dialog").dialog("close");
$("#dialog2").load('pages/success_page.php' , function() {
$("#dialog2").dialog("open");
setTimeout(function(){ $('#dialog2').dialog("close"); }, 3000);
});
})
.fail(function() {
console.log("error");
})
.always(function() {
$("#dialog").load('pages/loading_page.php' , function() {
$("#dialog").dialog("open");
});
});
});
Однако это решение не работает. В идеале я ищу решение, в котором .always откроет диалог с загрузкой. php страница и .done успешно заменит содержимое указанного диалога. php, а затем закроется через несколько секунд.
Может Кто-нибудь, пожалуйста, помогите?
Спасибо