Я думаю, вам нужно поймать 2 вещи: стандартные перенаправления выводятся в html как 'javascript: redirect ()'.Эта функция перенаправления определена в apex_4_1.js, просто переопределите ее:
function redirect(where){
alert("im overriding the original redirect! It would've brought me to "+where);
};
Ветви более раздражают.Лучшее, о чем я могу подумать сейчас, это использовать событие apex «apexbeforepagesubmit», которое запускается, когда страница передается через кнопки апекса.Вы можете определить динамическое действие для этого, оно может быть найдено в рамках событий фреймворка, или связать событие самостоятельно:
$(document).bind("apexbeforepagesubmit", function(event, pRequest){
alert("before submit:"+pRequest);
});
Очевидно, вам нужно будет выполнить какой-то синтаксический анализ здесь, так как URL перенаправления не будетдоступны (и я не думаю, что вы сможете получить его, так как это перенаправление на стороне сервера).Некоторые стандартные кнопки, о которых я могу думать, были бы навигационными кнопками записи (предыдущая, следующая).Но также и Применить изменения, которые делают ветку после обработки на той же странице, с сообщением об успешном завершении.Может быть, вы можете попробовать изменить Target Type
с Page in this Application
на URL
?Вы могли бы, например, вызвать функцию JavaScript, затем.Или, может быть, вы хотите перенаправить на страницу 1?
Почему вся эта установка?Если вы хотите иметь фиксированную панель и меню, почему бы не иметь пользовательский шаблон страницы и немного CSS CSS?Это кажется ненужным.
Расширяя комментарии:
Я установил очень маленький образец -> http://apex.oracle.com/pls/apex/f?p=26186:1 Приложение основано на теме24. Новые темы намного лучше, на мой взгляд, благодаря ограниченному использованию таблиц для разметки.Все, что я сделал, было:
- Общие компоненты> Шаблоны: я взял копию стандартной страницы с одноуровневыми вкладками без боковых панелей.Затем я поместил некоторые div с идентификатором вокруг позиций 3 и 4 региона, которые находятся в заголовке html и в теле.Также включены некоторые javascript в нижний колонтитул (вы, конечно, можете поместить свой javascript в отдельный файл и включить его)
- Shared Components> CSS-файл: я загрузил css-файл, чтобы обеспечить некоторые стили для моих divs
- Страница 0: здесь я создал 2 региона в позициях 3 и 4 и установил их состояние, чтобы они не отображались на странице входа.Области на странице 0 по умолчанию отображаются на каждой странице для этого приложения.
- Страница 1: для шаблона страницы я, конечно, выбрал свой пользовательский шаблон.Дальнейшее редактирование не требуется, мой шаблон берет на себя всю работу.Таким образом, роскошное плавающее меню слева и верхняя панель поставляются в стандартном исполнении.Это грубо и все, но все, что нужно, это простое редактирование, CSS и щепотка JavaScript: вам должно быть удобно.
Теперь каждая страница, которую я создам, будет выглядеть одинаково.Ветвь от страницы 1 к другой странице, конечно, будет выполнять перенаправление, но поскольку области на странице 0 отображаются на каждой странице, они все равно будут выглядеть одинаково => шаблонно.Кажется, это намного больше соответствует тому, что вы хотите, и гораздо меньше работы, чем весь маршрут AJAX.
То, что я сделал, чтобы создать это очень просто: сначала я отредактировал свой шаблон (после копирования существующегоодин для удобства) и поместил две позиции региона в div, и дал div идентификаторы.Затем я создал страницу и назначил ей свой новый шаблон.Я создал две области для каждой позиции.Затем я начал дурачиться, создавая дополнительные элементы и элементы, которые мне нужны.Я добавил теги стиля в заголовок страницы и поместил туда js.По мере того, как я шел, я редактировал свой шаблон, чтобы включить в него то, что было необходимо (некоторые div, класс, ...).Наконец я переместил CSS в файл и включил его в шаблон.То же самое для JS.Я скопировал регионы на нулевую страницу и удалил их со страницы 1. Шаблон готов.Не стесняйтесь взглянуть на это, создать новую страницу и т. Д. Это, конечно, небольшая демонстрация.Не стреляйте в меня за стиль; -)
- Apex.oracle.com -> логин
- рабочее пространство: tompetrusbe
- учетные данные: apex_demo / demo
- приложение: 26186. Исправлено меню и верхняя панель