powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Как заставить ajax работать последовательно?
20 сообщений из 20, страница 1 из 1
Как заставить ajax работать последовательно?
    #39085350
Kino36
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет, помогите пожалуйста.
Apex 4.2
Есть модальный регион с кучей айтемов. Вызывается через jquery.dialog. Перед вызовом запускаю ajax, который заряжает в модальном регионе все элементы. Все работало замечательно, пока не потребовалось пару селект листов сделать каскадными от других элементов. Как только я присваю зависимым элементам значения, начинает работать другой ajax, обновляющий селект листы, при этом в эти селект листы существующие значения присвоить нельзя.
Как мне думается, надо перед вызовом моего ajaxа с присваиванием и диалога, зарядить эти зависимые айтемы, чтобы селект листы обновились. Но я не могу сообразить как написать так, чтобы мой ajax запустился после всех этих рефрешей. Более того, если селект лист зависит от двух айтемов, то последовательный запуск
$s('имя1','значение');
$s('имя2,'значение');
дублирует выпадающий список :)

Немного сумбурно получилось, надеюсь на ваше понимание :)
...
Рейтинг: 0 / 0
Как заставить ajax работать последовательно?
    #39085480
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kino36,
1. Архитектура.
- не нужен модальный диалог с кучей. Лучше 2-3 диалога с короткими вопросами. Либо вообще popup LOV
- не только APEX но и весь веб заточен на GET\POST а не на AJAX. Т.е. страничка должна загружаться по урл с параметрами и вообще без AJAX.
- уже есть каскадныен. 2 Select List, но я обычно делаю один, но с группировкой (плагин) или дерево в конце концов.
Т.е. возможно все эти косяки сделали вашу форму малоуправляемым монстром.
Скрин давайте.
...
Рейтинг: 0 / 0
Как заставить ajax работать последовательно?
    #39085542
Kino36
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123,
скрин сейчас не смогу. Коротко описание - ссылка в репорте, по ссылке в DA запускается JS, который сначала запускает ajax, и затем диалог. Мне нужно до запуска ajax обновить содержимое select листов. Копал в сторону $.when, но что-то с апексом у меня не прошел тестовый пример.

по архитектуре спорить не буду. скажу лишь, что для пользователей ajax гораздо удобнее, особенно когда дело касается тяжелых страниц.
...
Рейтинг: 0 / 0
Как заставить ajax работать последовательно?
    #39085544
Kino36
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хм, только что в голову пришло, до запуска JS в DA сделать PLSQL блок с присвоением переменных. Там есть галка wait for result, по идее должно сработать
...
Рейтинг: 0 / 0
Как заставить ajax работать последовательно?
    #39085570
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
про мои пункты вверху ты не написал ни слова
Kino36Petro123,
скрин сейчас не смогу. Коротко описание - ссылка в репорте, по ссылке в DA запускается JS, который сначала запускает ajax, и затем диалог.

=== как вызывается диалог не имеет значения

Мне нужно до запуска ajax обновить содержимое select листов. Копал в сторону $.when, но что-то с апексом у меня не прошел тестовый пример.

=== выше 4 способа решения проблемы. Нет AJAX - нет проблемы

по архитектуре спорить не буду. скажу лишь, что для пользователей ajax гораздо удобнее, особенно когда дело касается тяжелых страниц.

=== т.е. твой вопрос: Как мне не делать тяжёлый диалог-модал-страничку? См.выше.


Ты сделал тяжёлый модал-диалог. Который должен висеть очень непродолжительное время для пользователя.
И ты спрашиваешь, как же его убыстрить с помощью AJAX + костыли в виде синхронизации. Т.е. насилования его.
...
Рейтинг: 0 / 0
Как заставить ajax работать последовательно?
    #39085573
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kino36Мне нужно до запуска ajax обновить содержимое select листов.
их нельзя обновить, т.к. они сами на AJAX(зависит от реализации). Т.е. обновляются на клик мышки, например.
Заменил Select List на Super select list и зови программиста для переписывания твоего кода.
...
Рейтинг: 0 / 0
Как заставить ajax работать последовательно?
    #39086377
blkangel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Kino36,
Проблема у Вас с пониманием синхронности и асинхронности вызовов.
Изучите эти вопросы, и что такое callback функция.
Вопрос ближе к ветке Javascript

Petro123 в очередной раз хочу Вас попросить отвечать по сути, а не как еврей вопросом на вопрос "А зачем вы так сделали? У меня лучше, делай как я." Человек пришел с конкретным вопросом, Вы в очередной раз устроили флуд, из за которого лень перечитывать Ваш бред.
...
Рейтинг: 0 / 0
Как заставить ajax работать последовательно?
    #39086386
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
blkangel,
если ты кодировщик, и им и помрёшь, сиди молчи.

авторИзучите эти вопросы, и что такое callback функция.
Вопрос ближе к ветке Javascript
постеснялся бы это писать автору.
...
Рейтинг: 0 / 0
Как заставить ajax работать последовательно?
    #39086401
blkangel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123,

БРЕДОВОЗ, что ты полезного написал в этой теме? Вали в свою дельфи ветку и морду свою от туда не показывай.
...
Рейтинг: 0 / 0
Как заставить ajax работать последовательно?
    #39086403
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
blkangel,
надо же, ты и JS ветке оказывается ничего умного не сказал.
Придётся слать слать модератору за переход на личности.
...
Рейтинг: 0 / 0
Как заставить ajax работать последовательно?
    #39086443
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kino36,

blkangel дело говорит. Но если лень разбираться с яваскриптом, то см. событие after refresh в dynamic action.
...
Рейтинг: 0 / 0
Как заставить ajax работать последовательно?
    #39086445
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SvDevKino36,
blkangel дело говорит. Но если лень разбираться с яваскриптом, то см. событие after refresh в dynamic action.
пусть говорит).
В каждой ветке, сидит 1 процент людей, которые толкаются локтями, когда что-то не понимают.
Добро пожаловать в веб.
...
Рейтинг: 0 / 0
Как заставить ajax работать последовательно?
    #39086450
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SvDevНо если лень разбираться с яваскриптом
а разбираться таки надо. Чтобы потом программист за тобой не помянул хорошим словом)
...
Рейтинг: 0 / 0
Как заставить ajax работать последовательно?
    #39086770
Kino36
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
blkangelKino36,
Проблема у Вас с пониманием синхронности и асинхронности вызовов.
Изучите эти вопросы, и что такое callback функция.
Вопрос ближе к ветке Javascript

Petro123 в очередной раз хочу Вас попросить отвечать по сути, а не как еврей вопросом на вопрос "А зачем вы так сделали? У меня лучше, делай как я." Человек пришел с конкретным вопросом, Вы в очередной раз устроили флуд, из за которого лень перечитывать Ваш бред.
Наконец-то нормальный человек :) Спасибо за ответ!
я пробовал свой ajax разбить на две части с параметром async:false
в первом запуске запускал обновление выпадающих списков, во втором - заряжал их значениями. Вроде по идее должно было сработать, но не сработало :(
но там был последовательный их запуск. а если действительно вызов второй запихнуть как callback первой... сейчас попробую
...
Рейтинг: 0 / 0
Как заставить ajax работать последовательно?
    #39086775
Kino36
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SvDevKino36,

blkangel дело говорит. Но если лень разбираться с яваскриптом, то см. событие after refresh в dynamic action.

я сделал вызов plsql перед запуском своего js, сработало :) js честно ждет, пока селект листы обновятся :)
...
Рейтинг: 0 / 0
Как заставить ajax работать последовательно?
    #39086784
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kino36в первом запуске запускал обновление выпадающих списков, во втором - заряжал их значениями.
заряжаются выпадающие списки в PL во время рендеринга странички. Самим APEX.
Но это для вас IMHO.
Работать будет любой код что вы напишите. Дерзайте.
...
Рейтинг: 0 / 0
Как заставить ajax работать последовательно?
    #39087814
blkangel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Kino36я пробовал свой ajax разбить на две части с параметром async:false
в первом запуске запускал обновление выпадающих списков, во втором - заряжал их значениями. Вроде по идее должно было сработать, но не сработало :(
но там был последовательный их запуск. а если действительно вызов второй запихнуть как callback первой... сейчас попробую

В инете написано что в jquery 1.8 (Апекс4.2) async:false является устаревшим и надо использовать .done

Код: javascript
1.
2.
3.
4.
5.
6.
7.
$.ajax({
        // Query to server
    }).done(function() {
        // Verify good data
        // Do stuff
        
    });
...
Рейтинг: 0 / 0
Как заставить ajax работать последовательно?
    #39088573
AlexAA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Kino36,

Попробуй посмотреть здесь http://hardlikesoftware.com/weblog/2015/04/15/apex-and-asynchronous-ajax/
Вообще, насколько я понимаю, надо воспользоваться возможностью JS вызывать функцию по завершению ajax запроса.
...
Рейтинг: 0 / 0
Как заставить ajax работать последовательно?
    #39088596
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Автора давно нет. Он жеж не программирует. Тот кто пишет, в первую очередь декларативно. Например, как он сказал - разбить между DA
Или событие рефреш от самого APEX.
Или вставить DA NULL для синхронизации.
А писать лапшекод на голом JS в последнем случае.
...
Рейтинг: 0 / 0
Как заставить ajax работать последовательно?
    #39088601
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну и азбука.
AJAX используется в 2 х вариантах:
- самим apex, программист не лезет.
Т.е. модальное окно должно от него быть, от Apex.
- Вами, опять от самого apex вызовом его процесса.
Т.е. текст не такой как у аффтора.
...
Хотя о чём я. Скрина и кода нет. Есть только оффтоп и литературные опусы.
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Как заставить ajax работать последовательно?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]