Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Обработчик ошибок при вызове сервиса в аякс запросе
|
|||
|---|---|---|---|
|
#18+
Привет! Обнаружил, что если на странице выполняется аякс запрос и он оказывается настолько продолжительным, что пользователь успевает нажать какую-то ссылку (даже ведущую на другой сайт), то в ФФ и Хроме сначала выполняется функция обработки ошибок. Можно ли как-то этого избежать или хотя бы отследить в функции обработки ошибок, что она сработала в результате нажатия по другой ссылке, а не в результате ошибки запроса? Чтобы можно было бы её сразу завершить. Например, на странице имеется 2 ссылки Код: html 1. 2. 1-я ссылка вызывает вэб метод GetCustomersByCountry, при успехе выполняется функция displayCustomers, при неудаче выполняется faultCustomers. Проблема в том, что faultCustomers выполняется также, если я успеваю нажать на ссылку Google. А я успеваю, потому что в метод GetCustomersByCountry поставил задержку в несколько секунд :) Можно ли сделать так, чтобы при нажатии на Google фунция faultCustomers не выполнялась, или же там как-то отследить, что нажата ссылка Google? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2012, 00:37 |
|
||
|
Обработчик ошибок при вызове сервиса в аякс запросе
|
|||
|---|---|---|---|
|
#18+
Неужели никто не сталкивался? Я пример упростил, но случай вполне реальный. Выполняется некоторый аякс запрос, который может быть продолжительным. В этом случае пользователю предлагается перейти по специальной ссылке, чтобы ускорить процесс. Но проблема в том, что срабатывает функция обработки ошибок исходного запроса и пользователь видит совсем не то, что нужно. Не понятно, как при этом управлять функцией обработки ошибок. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2012, 12:08 |
|
||
|
Обработчик ошибок при вызове сервиса в аякс запросе
|
|||
|---|---|---|---|
|
#18+
А повесить эвент на ссылку, и прервать ajax запрос при нажатии? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2012, 12:52 |
|
||
|
Обработчик ошибок при вызове сервиса в аякс запросе
|
|||
|---|---|---|---|
|
#18+
Парамон, Спасибо, сделал пока на костылях через переменную, в событии по клику устанавливается флаг, затем, когда срабатывает обработчик ошибок, этот флаг проверяется. В инете нашел способ отмены обратной передачи http://msdn.microsoft.com/ru-ru/library/bb397460.aspx в iquery тоже есть возможность http://stackoverflow.com/questions/2922678/why-does-calling-abort-on-ajax-request-cause-error-in-asp-net-mvc-ie8 Но для моего случая при вызове сервиса, не совсем понятно, как это сделать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2012, 11:02 |
|
||
|
Обработчик ошибок при вызове сервиса в аякс запросе
|
|||
|---|---|---|---|
|
#18+
Starlex, Не совсем понятна проблема: если ушел со страницы - ну плюнет сервис свой ризалт в белый свет, и что? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2012, 12:32 |
|
||
|
Обработчик ошибок при вызове сервиса в аякс запросе
|
|||
|---|---|---|---|
|
#18+
В смысле попытается, но это его проблемы... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2012, 12:37 |
|
||
|
|

start [/forum/topic.php?fid=18&msg=37919262&tid=1359322]: |
0ms |
get settings: |
6ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
127ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
| others: | 230ms |
| total: | 429ms |

| 0 / 0 |
