Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   jQuery.get как передать данные в глобальную переменную? (https://javascript.ru/forum/jquery/12949-jquery-get-kak-peredat-dannye-v-globalnuyu-peremennuyu.html)

abc_ua 09.11.2010 19:38

jQuery.get как передать данные в глобальную переменную?
 
var rezult = "";
$.get("ссылка", function (data) {
	...
	rezult = "...";
});
alert(rezult);


как получить значение rezult вне get запроса?

exec 09.11.2010 19:41

Обращаться к переменной после того, как выполнен запрос и в неё записалось значение.

abc_ua 09.11.2010 19:47

разве сейчас не так?

exec 09.11.2010 19:55

Нет. Отсылается запрос, а затем сразу же (без ожидания ответа) идёт обращение к переменной. Я бы вам посоветовал почитать, что такое AJAX и как он работает, прежде чем использовать.

abc_ua 09.11.2010 20:18

прочитал http://jquery-docs.ru/Ajax/jQuery.get/#examples вот разбираюсь, вы можете рабочий вариант написать или подкинуть еще литературы с примерами?

abc_ua 10.11.2010 05:51

народ хелп! дайте пожалуйста рабочий вариант или ссылку на литературу

Kolyaj 10.11.2010 09:56

var rezult = "";
$.get("ссылка", function (data) {
    ...
    rezult = "...";
    onRequest();
});
function onRequest() {
    alert(rezult);
}


Например.

Bercut 12.11.2010 00:46

Цитата:

Сообщение от abc_ua
var rezult = "";
	$.get("ссылка", function (data) {
	    ...
	    rezult = "...";
	});
	alert(rezult);

дело в том, что функция внутри $.get является колбэком и она выполняется после того как сервер вернёт ответ (а если он тормозит или там тяжелая программа это может быть очень долгое время)
а вот шестая строка вашего скрипта выполняется сразу после отправления запроса на сервер, т.е. rezult имеет ровно то значение, которое вы определили в первой строке

как вам и советовали ранее изучите ajax и xmlhttprequest прежде чем использовать jQuery

abc_ua 12.11.2010 00:57

спасибо, уже понял это, забыл отписаться

проблему решил вложив один get-запрос в другой

Bercut 12.11.2010 01:58

Цитата:

Сообщение от abc_ua
проблему решил вложив один get-запрос в другой

не понял! зачем?
опишите свою ситуацию подробней

ведь решение простое, его указал Kolyaj


Часовой пояс GMT +3, время: 09:55.