Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: как вернуть значение из влошенй функции
function js_vk_init (){ VK.api("friends.getAppUsers",{},function(data){
arr =data.response;
str=arr.length;
alert( str.ToString);
});
все идеально выводит, но мне нужно вернуть полученое значение ввиде строки или числа (по сути в переменой число) когда я использую самый первый код - выводит undefined - что посути означает значение отсутствует)
Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011 Откуда: .kh.ua
Помог: 242 раз(а)
PATCH, подозреваю, что это асинхронная функция. Тогда из нее нельзя вернуть данные в синхронный код.
Курите в сторону Promises и jQuery.Deferred()
PATCH
Отправлено: 20 Августа, 2013 - 14:08:27
Частый посетитель
Покинул форум
Сообщений всего: 924
Дата рег-ции: Апр. 2011
Помог: 22 раз(а)
нехочу как то вглублятся в эти танцы с бубонами и создал просто алгоритм) создал тэг, создал ему атрибут, записал значение атрибута, и потом из основной функции считываю атрибут этого тега и возвращаю значение, вот тока работает не с первого раза а со второго т.к сначало испольняется getAttribute кто подскажит в чем проблема (в js слабоват) но пологике код исполняется сверху в низ
ошибку выдает : Uncaught TypeError: Cannot call method 'getAttribute' of undefined на первый раз если кликнуть нечего, на второй раз выдаст значение полученого из атрибута numbers
Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011 Откуда: .kh.ua
Помог: 242 раз(а)
PATCH, повторяю.
Это асинхронная функция, и обработчик сработает позже чем строки, которые идут сразу после него.
Вы еще не создали элемент, а пытаетесь считать его невалидный атрибут.
Все нужно переносить в callback
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.