Oracle Apex: DA, что сработает при закрытии модального диалога? - PullRequest
1 голос
/ 06 февраля 2020

У меня довольно обычное одностраничное Oracle приложение Apex. Для моего шаблона главной страницы я только начал с пустой страницы.

При определенных условиях в этом приложении Apex, основываясь на записи конечного пользователя, я определил, какая ветвь переходит на другую Модальную Диалог страницу приложения.

Этот Модальный Диалог имеет две кнопки. При желании мое приложение успешно устанавливает состояние сеанса на главной странице в зависимости от того, какую кнопку пользователь выбирает: все работает. Любая кнопка также заходит так далеко, что закрывает этот модальный диалог.

Моя проблема заключается в том, что на главной странице я ищу событие типа Dynami c -Action, которое сработает, когда мой модальный диалог закрывается, поэтому я могу прикрепить немного JavaScript (.setFocus()) к нему. Тем не менее, я не могу найти какое-либо действие Dynami c на главной странице, которое сработает при закрытии моего модального диалога. Я попробовал все виды действий Dynami c на главной странице, о которых я могу думать, с действием «Выполнить JavaScript код» и, как часть моего тестирования, простым

alert("here");

для фрагмента кода, но JavaScript никогда не срабатывает.

В частности, я попытался установить DA на событии 'Dialog Closed' главной страницы, для основной область страницы, из которой происходило перенаправление Модального диалога, но это событие не срабатывает при закрытии моего Модального диалога.

Я нуб Apex, поэтому я чувствую, что упустил что-то фундаментальное здесь.

Есть ли способ запустить мой пользовательский JS на главной странице после закрытия модального диалога? Я бросил простое приложение здесь . (Apexdemo / apexdemo). Я пытаюсь найти способ выполнить код JS на моей главной странице после нажатия кнопки «Возврат» в диалоговом окне «Модальное».

Спасибо.

1 Ответ

1 голос
/ 07 февраля 2020

Есть способ. На главной странице в конструкторе страниц щелкните вкладку Dynami c Actions слева. Затем щелкните правой кнопкой мыши на закрытом диалоге и выберите Создать динамическое действие c:

enter image description here

Измените Имя на что-то значимое, измените Тип выбора на JavaScript Выражение затем поместите «окно» как JavaScript Express:

enter image description here

Теперь нажмите на Refre sh Действие слева и измените Действие на Выполнить JavaScript Код, затем добавьте свой код:

enter image description here

Теперь, если вы откроете модальную страницу со страницы с этим новым Dynami c Действие, затем закройте модальную страницу с помощью диалогового окна «Закрыть диалог», Действие c, после чего оно вызовет ваш JavaScript.

С уважением.

...