Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как запаузить перезагрузку страницы?
|
|||
|---|---|---|---|
|
#18+
Всем привет! Помогите плз решить следующую проблему, бьюсь уже 2 дня. Звучит она примерно так. Есть веб форма, на ней кнопка "сабмит" По нажатию этой кнопки должен выполняться большой кусок кода, и страница не должна перезагрузиться, пока код не выполниться. Большой кусок кода представляет собой следующее. Создаётся сокетный клиент, конектиться к сокет-серверу, и посылает запрос, сокет-сервер обрабатывает информацию, и присылает ответ. Тут собственно и загвоздка, как мне не перезагружать страницу, пока не получу ответ? Решение я нашол тривиальное, с помощью флага. bool !servAnwer; while(!servAnwer) { } И в событии когда приходит ответ, делаю флаг "тру". Тут возникла большая проблема - цикл начинает гонять с такой скорость, что бипер разрываеться. И поэтому надо другое решение, что-то на подобие Паскалевского Delay();. Пробовал найти решение с потоками, но так ничё интересного не придумал. Главная суть заключаеться в неиспользлвании клиенских технологий, типа Athlas, Java Script. Если есть идеи, буду очень благодарен. П.С. форум просмотрел. Oh well, whatever - nevermind... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2006, 13:45 |
|
||
|
Как запаузить перезагрузку страницы?
|
|||
|---|---|---|---|
|
#18+
Всем привет! Помогите плз решить следующую проблему, бьюсь уже 2 дня. Звучит она примерно так. Есть веб форма, на ней кнопка "сабмит" По нажатию этой кнопки должен выполняться большой кусок кода, и страница не должна перезагрузиться, пока код не выполниться. Большой кусок кода представляет собой следующее. Создаётся сокетный клиент, конектиться к сокет-серверу, и посылает запрос, сокет-сервер обрабатывает информацию, и присылает ответ. Тут собственно и загвоздка, как мне не перезагружать страницу, пока не получу ответ? Решение я нашол тривиальное, с помощью флага. bool !servAnwer; while(!servAnwer) { } И в событии когда приходит ответ, делаю флаг "тру". Тут возникла большая проблема - цикл начинает гонять с такой скорость, что бипер разрываеться. И поэтому надо другое решение, что-то на подобие Паскалевского Delay();. Пробовал найти решение с потоками, но так ничё интересного не придумал. Главная суть заключаеться в неиспользлвании клиенских технологий, типа Athlas, Java Script. Если есть идеи, буду очень благодарен. П.С. форум просмотрел. Если ты не будешь пользовать асинхронный запрос то никак. Сам подумаю нажал кнопку сабмит все реквест ушел на сервер. "тестирование программ может выявить наличие ошибок, но не может служить доказательством их отсутствия" Э.В.Дейкстра ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2006, 13:59 |
|
||
|
Как запаузить перезагрузку страницы?
|
|||
|---|---|---|---|
|
#18+
Я его и использую, на сокет сервере. Или чтото другок имеется ввиду?Oh well, whatever - nevermind... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2006, 14:19 |
|
||
|
Как запаузить перезагрузку страницы?
|
|||
|---|---|---|---|
|
#18+
Может сделать что-то типа сплэш-страницы? то есть пока запрос обрабатывается, перенаправить пользователя на страницу с заставкой, как только код выполнится, сразу вернуть юзера в нужное место:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2006, 14:22 |
|
||
|
Как запаузить перезагрузку страницы?
|
|||
|---|---|---|---|
|
#18+
Тнх за идею, я об этом не думал. Если так и не удасться запаузить, то так и сделаю!Oh well, whatever - nevermind... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2006, 14:31 |
|
||
|
Как запаузить перезагрузку страницы?
|
|||
|---|---|---|---|
|
#18+
Кнопка не должна иметь тип submit, а просто выполнять вызов скрипта. Когда обработка закончилась, надо выполнить form.submit(). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2006, 14:48 |
|
||
|
|

start [/forum/topic.php?fid=18&msg=33918891&tid=1390592]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
89ms |
get topic data: |
14ms |
get forum data: |
4ms |
get page messages: |
68ms |
get tp. blocked users: |
2ms |
| others: | 234ms |
| total: | 443ms |

| 0 / 0 |
