| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > JavaScript: Общие вопросы > Присвоение значения переменной |
| Автор: Evgen24 11.1.2013, 20:20 | ||
Не могу понять как присвоить глобальной переменной в функции аякс запроса:
вот первый алерт выдает: 2 а второй -1 как добиться чтобы все же значение 2 присвоилось? |
| Автор: Amphiluke 11.1.2013, 20:30 |
| Непонятно, что вас не устраивает. В ф-ции success значение и так присваивается глобальной переменной, раз вы утверждаете, что До успешного завершения AJAX-запроса move_item_x будет равно -1, это и понятно, ведь вы делаете асинхронный запрос. |
| Автор: Evgen24 11.1.2013, 20:33 |
| да, но 2 алерт стоит после запроса и выдает -1, в дальнейших вычмслениях тоже -1 используется, как добиться чтобы было значение с аякс запроса? |
| Автор: Amphiluke 11.1.2013, 20:39 | ||
Еще раз: запрос асинхронный. Следовательно, программа не ожидает завершения запроса, и продолжает выполнение сразу после вызова $.ajax. Ф-ция success будет вызвана уже позже, когда будет получен успешный результат от серверного скрипта. Если вам нужно выполнять какие-то действия после получения ответа сервера, выполняйте их из ф-ции success:
|
| Автор: Evgen24 11.1.2013, 21:31 | ||
исправил запрос на синхроный:
без изменений |
| Автор: Amphiluke 11.1.2013, 21:38 |
| Теперь вы зачем-то сделали переменную move_item_x локальной. Ясное дело, что вне ф-ции success она не видна. |
| Автор: Evgen24 11.1.2013, 21:50 |
| спасибо, заработало |
| Автор: skyboy 11.1.2013, 23:16 |
не надо бояться ассинхронности. при не быстром интернете, синхронный запрос завесит браузер. |