Работа с полученным через $.get() обьэктом/данными
Господа!
3й день бьюсь с одной функцией! var userIdD = $.get('http://someurl.com/options.php', function(abc) { var abc = $(abc); var link = $(abc).find('a:contains(View My Profile)'); //console.log (link); var userID = $(link).attr('href'); var userId = $(userID); console.log(userId); console.log(userID); }); console.log(userIdD); console.log(userId); Внутри самой функции console.log срабатывает вполне успешно, а после выхода из неё показывается как undefined! Подскажите, как можно правильно извлечь данные, чтобы в дальнейшем была возможность ими пользоваться! версия jquery-1.4.4.js |
|
BuZZinga,
Сделайте userId глобальной переменной, и сможете пользоваться ей вне функции. Но, с учетом того, что get - асинхронный запрос, она не сразу получит значение из ответа. |
вот как раз и воюю с тем, чтобы получить её, и в дальнейшем пользоваться ею
|
BuZZinga,
var userId; $.get('http://someurl.com/options.php', function(abc) { var abc = $(abc); var link = $(abc).find('a:contains(View My Profile)'); //console.log (link); var userID = $(link).attr('href'); userId = $(userID); console.log(userId); console.log(userID); }); и через какое-то время можно будет console.log(userId); Но правильней было бы использовать ее внутри функции обработки ответа |
BuZZinga,
Или использовать более новую версию jQuery, и тогда у вас появится объект jqXHR, который содержит, кроме всего, и ответ от сервера. Смотрите первую ссылку в посте №2 а также http://jquery.page2page.ru/index.php...BA%D1%82_jqXHR |
с удовольствием использовал бы более новую версию, но к сожалению это не представляется возможным((
выходить надо из того что есть( |
BuZZinga,
Используй паттерн pub/sub с помощью этой фичи http://api.jquery.com/triggerHandler/. Когда ответ пришел, генерируешь событие. Где-то ниже, идет подписка на это событие. userID и userId передавай как экстра-параметры. |
Часовой пояс GMT +3, время: 01:20. |