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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 03.05.2009, 16:38
_lucky_ вне форума Посмотреть профиль Отправить личное сообщение для _lucky_ Найти все сообщения от _lucky_
  № 1  
Ответить с цитированием
_lucky_

Регистрация: May 2009
Сообщений: 13
По умолчанию Flash + ASP.NET

Доброго времени суток !!!
Делаю связку Flash + ASP.NET(С#), возникла проблема передачи переменных от ASP.NET к ActionScript 3.0.
На ASP.NET передачу параметра id делаю так:
Код:
Response.Write("id=111");
На ActionScript 3.0 принимаю значение так :

Код AS3:
var loader:URLLoader;
var req:URLRequest;
 
loader = new URLLoader();
req = new URLRequest("Default.aspx?id=111");
loader.addEventListener(Event.COMPLETE, loadComplete);
loader.load(req);
function loadComplete(event:Event):void {
 text_area.text = loader.data;
}
В текстовом поле text_area получаю не только нужную мне переменную но и весь хтмл код, например:

Цитата:
id=133

<html>
<head>
..........
как мне передать переменную в AS 3.0 чтобы можно было с ней дальше работать ?? помогите плиз , может кто стыкался с такой проблемой...

Старый 03.05.2009, 16:58
murz вне форума Посмотреть профиль Отправить личное сообщение для murz Найти все сообщения от murz
  № 2  
Ответить с цитированием
murz
[+1 10.12.10]

Регистрация: Feb 2006
Сообщений: 148
Отправить сообщение для murz с помощью ICQ
попробуйте так
Код AS3:
//установить формат данных
loader.dataFormat = URLLoaderDataFormat.VARIABLES;
//парсить
var vars:URLVariables = new URLVariables(String(loader.data));
//прочесть
trace(vars.id);

Старый 03.05.2009, 17:05
BlooDHounD вне форума Посмотреть профиль Отправить личное сообщение для BlooDHounD Посетить домашнюю страницу BlooDHounD Найти все сообщения от BlooDHounD
  № 3  
Ответить с цитированием
BlooDHounD
стервочка (я мужик)
 
Аватар для BlooDHounD

блогер
Регистрация: Mar 2004
Адрес: Борисов
Сообщений: 3,161
Записей в блоге: 22
murz, а зачем делать столько преобразований?
Код AS3:
//установить формат данных
loader.dataFormat = URLLoaderDataFormat.VARIABLES;
//парсить
var vars:URLVariables = loader.data as URLVariables;
//прочесть
trace(vars.id);

Старый 03.05.2009, 17:15
murz вне форума Посмотреть профиль Отправить личное сообщение для murz Найти все сообщения от murz
  № 4  
Ответить с цитированием
murz
[+1 10.12.10]

Регистрация: Feb 2006
Сообщений: 148
Отправить сообщение для murz с помощью ICQ
BlooDHounD, если Вы про содание нового экземпляр URLVariables, то тут я могу ошибаться.

А про формат данных, все верно. Он нужен.

Старый 03.05.2009, 17:41
BlooDHounD вне форума Посмотреть профиль Отправить личное сообщение для BlooDHounD Посетить домашнюю страницу BlooDHounD Найти все сообщения от BlooDHounD
  № 5  
Ответить с цитированием
BlooDHounD
стервочка (я мужик)
 
Аватар для BlooDHounD

блогер
Регистрация: Mar 2004
Адрес: Борисов
Сообщений: 3,161
Записей в блоге: 22
murz, если писать формат данных, тогда зачем потом конвертить его из стринга? в вашем коде его лучше грузить как TEXT.

Старый 03.05.2009, 18:28
murz вне форума Посмотреть профиль Отправить личное сообщение для murz Найти все сообщения от murz
  № 6  
Ответить с цитированием
murz
[+1 10.12.10]

Регистрация: Feb 2006
Сообщений: 148
Отправить сообщение для murz с помощью ICQ
Цитата:
грузить как TEXT
Окей, грузим как текст.
Кастинг в строку может тоже лишний, но не без оснований.
Скажите Вы свой пример проверяли?
Будет рантайм ошибка, vars так и не создались при вверсходящем приведении типа.
TypeError: Error #1009: Не удается вызвать свойство или метод со ссылкой на объект "null".
Код AS3:
var str:String ="sd=12";
var vars:URLVariables =str as URLVariables;
trace(vars.sd);


Последний раз редактировалось murz; 03.05.2009 в 18:37.
Старый 03.05.2009, 20:03
BlooDHounD вне форума Посмотреть профиль Отправить личное сообщение для BlooDHounD Посетить домашнюю страницу BlooDHounD Найти все сообщения от BlooDHounD
  № 7  
Ответить с цитированием
BlooDHounD
стервочка (я мужик)
 
Аватар для BlooDHounD

блогер
Регистрация: Mar 2004
Адрес: Борисов
Сообщений: 3,161
Записей в блоге: 22
мдя ... у Вас всё нормально с логикой? есть 2 варианта работы:
Код AS3:
var data:* = 'sd=12';
var vars:URLVariables = new URLVariables( str as String );
trace(vars.sd);
или так:
Код AS3:
var data:* = new URLVariables( 'sd=12' );
var vars:URLVariables = data as URLVariables;
trace(vars.sd);
Ваш пример это симбиоз, который выглядит так:
Код AS3:
var data:* = new URLVariables( 'sd=12' );
var vars:URLVariables = new URLVariables( String( data ) );
trace(vars.sd);
используя URLLoaderDataFormat.VARIABLES, вы автоматически записываете в loader.data объект URLVariables, Ваш код производит двойную конвертацию. не нужно конвертировать URLVariables в String, а потом на основании этой переменной создавать новый объект URLVariables.


Последний раз редактировалось BlooDHounD; 03.05.2009 в 20:06.
Старый 03.05.2009, 21:10
_lucky_ вне форума Посмотреть профиль Отправить личное сообщение для _lucky_ Найти все сообщения от _lucky_
  № 8  
Ответить с цитированием
_lucky_

Регистрация: May 2009
Сообщений: 13
Спасибо большое за помощь, как мне привязать loader.data к этому коду:
Код AS3:
var data:* = 'sd=12';
var vars:URLVariables = new URLVariables( str as String );
trace(vars.sd);
я пробовал так:
Код AS3:
var data:* = loader.data;
var vars:URLVariables = new URLVariables( data as String );
text_area.text = vars.id;
в ответ получаю пустую строку в поле text_area

Старый 03.05.2009, 21:38
murz вне форума Посмотреть профиль Отправить личное сообщение для murz Найти все сообщения от murz
  № 9  
Ответить с цитированием
murz
[+1 10.12.10]

Регистрация: Feb 2006
Сообщений: 148
Отправить сообщение для murz с помощью ICQ
Цитата:
у Вас всё нормально с логикой?
Логику профиксю :-)
BlooDHounD, спасибо за общение. Разобрался.

Старый 03.05.2009, 21:44
_lucky_ вне форума Посмотреть профиль Отправить личное сообщение для _lucky_ Найти все сообщения от _lucky_
  № 10  
Ответить с цитированием
_lucky_

Регистрация: May 2009
Сообщений: 13
Суть дела заключается в том, что нужно будет принимать много переменных, и наверняка нужно применять парсер, я правильно понял ??? в ActionScript его нет, нужно свой писать, я правильно понял??

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

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

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


 


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


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