Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 20.01.2006, 17:26
$mival вне форума Посмотреть профиль Отправить личное сообщение для $mival Найти все сообщения от $mival
  № 1  
Ответить с цитированием
$mival
 
Аватар для $mival

Регистрация: Oct 2005
Адрес: Russia, Irkutsk
Сообщений: 742
По умолчанию [variables] Переменная внутри функции

проблем такой короче:
вот такой код:
Код:
var sender:LoadVars = new LoadVars();
var receiver:LoadVars = new LoadVars();
inp.html = true;
sender.zapros = "undefined";
sender.sendAndLoad("http://localhost/zzz.php", receiver, "POST");
receiver.onData = function(txt:String) {
	if (txt != undefined) {
		otvet=txt.split("__");
		inp.htmlText = otvet[0];
		sm = otvet[1];
	} else inp.text = "Нет ответа от сервера!";
};
trace(sm);
тут ответ приходит в виде "валпивалп__67".
ну понятно, что он делится сплитом на otvet[0] и otvet[1].
Прикол в том, что надо otvet[1] потом использовать позже, а он не куда не передаётся,
потому что определён как бы внутри функции и за её пределы никуда не передаётся(
трэйс возвращает undefined.
даже если так:
Код:
var otvet:Array;
var sm:String;
var sender:LoadVars = new LoadVars();
var receiver:LoadVars = new LoadVars();
inp.html = true;
sender.zapros = "undefined";
sender.sendAndLoad("http://localhost/zzz.php", receiver, "POST");
receiver.onData = function(txt:String) {
	if (txt != undefined) {
		otvet=txt.split("__");
		inp.htmlText = otvet[0];
		sm = otvet[1];
	} else inp.text = "Нет ответа от сервера!";
};
trace(sm);
trace(otvet[1]);

Старый 20.01.2006, 17:42
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 2  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
какой же здесь прикол: как написал так и работает
во-первых, ты смотришь trace(otvet[1]) ДО окончания загрузки
во-вторых, определи переменную, чтоб ее было видно и там и там и все..

Старый 20.01.2006, 18:17
$mival вне форума Посмотреть профиль Отправить личное сообщение для $mival Найти все сообщения от $mival
  № 3  
Ответить с цитированием
$mival
 
Аватар для $mival

Регистрация: Oct 2005
Адрес: Russia, Irkutsk
Сообщений: 742
тогда как её определить, чтоб была видима и там итам?

Старый 20.01.2006, 18:25
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 4  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
Код:
var otvet=[]
receiver.onData = function(txt:String) {
	otvet=txt.split("__");
};
или
Код:
receiver.otvet=[]
receiver.onData = function(txt:String) {
	this.otvet=txt.split("__");
};
зы: второй вариант более грамотный

Старый 20.01.2006, 20:38
$mival вне форума Посмотреть профиль Отправить личное сообщение для $mival Найти все сообщения от $mival
  № 5  
Ответить с цитированием
$mival
 
Аватар для $mival

Регистрация: Oct 2005
Адрес: Russia, Irkutsk
Сообщений: 742
а, ну это ж практически одно и то же что и второй код в первой моей месаге.
Осталось теперь токо трэйсить не до окончания загрузки, а после.
А это как? onLoad? вроде нет. тогда как?

Старый 20.01.2006, 20:53
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 6  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
Цитата:
что надо otvet[1] потом использовать позже
вот там..

Старый 21.01.2006, 03:36
MOHCTEP вне форума Посмотреть профиль Отправить личное сообщение для MOHCTEP Найти все сообщения от MOHCTEP
  № 7  
Ответить с цитированием
MOHCTEP

Регистрация: Dec 2002
Адрес: Живу вот где-то
Сообщений: 493
Цитата:
Сообщение от $mival
а, ну это ж практически одно и то же что и второй код в первой моей месаге.
Совсем не одно и то же!
Код:
var otvet:Array=[];
var sm:String;
var sender:LoadVars = new LoadVars();
var receiver:LoadVars = new LoadVars();
inp.html = true;
sender.zapros = "undefined";
sender.sendAndLoad("http://localhost/zzz.php", receiver, "POST");
receiver.onData = function(txt:String) {
	if (txt != undefined) {
		otvet=txt.split("__");
		inp.htmlText = otvet[0];
		sm = otvet[1];
                         tracer();
	} else inp.text = "Нет ответа от сервера!";
};
function tracer(){
  trace(sm);
  trace(otvet[1]);
}

Создать новую тему Ответ Часовой пояс GMT +4, время: 13:53.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 13:53.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.