Я пытаюсь сначала включить три разных диалога, как скрытые, а затем в зависимости от ответа от формы ajax submit, я хочу показать разные диалоги.dojo dijit dialog underlay не отображается
Когда форма отправлена и ждет ответа, я могу показать диалоговое окно «in progress». Затем, если сервер возвращает ответ об ошибке, я хочу скрыть первое диалоговое окно, а затем отобразить другое диалоговое окно в зависимости от типа ответа об ошибке.
Я могу почти добиться того, что хочу, за исключением случаев, когда я скрываю первый диалог и показываю следующий, подкладка исчезает. Если затем прокручивать окно браузера, подкладка отображается правильно. я делаю что-то простое, как это:
dijit.byId("progress_dialog").hide();
dijit.byId("error_dialog").show();
Любой есть предложения?
Я видел следующую страницу на веб-сайте Dojo, но, похоже, это временное решение для dojo 0.9? http://www.dojotoolkit.org/forum/dijit-dijit-0-9/dijit-support/showing-dialog-right-after-hiding-another-dialog-while-keeping-u
любая помощь будет оценена.
Спасибо.
[Изменить] В порядке, я «решил» проблему, добавив немного задержки, как показано ниже.
dijit.byId("progress_dialog").hide();
setTimeout(function() {
dijit.byId("error_dialog").show();
}, 500);
Это работает для меня, но я думаю, что может быть лучший способ его решения. Любые берущие?
[Edit снова] версия я работаю с в додзё-1.3.2
Какую версию dojo вы используете? Dojo 1.3 имел значительные изменения в реализации диалога. – Kniganapolke
Мой плохой. Я должен был указать это на мой вопрос. Версия, которую я использую, - 1.3.2. –