Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Сортировка URLVariables (http://www.flasher.ru/forum/showthread.php?t=145128)

Gh >k 02.10.2010 10:45

Код AS3:

var str:String = e.target.data.toString();
var list:Array = str.split('&');
 
for each(var s:String in list)
trace(s.split('=')[1]);

Не подойдёт т.к. с PHP данные приходят вида "%26" вместо пробела и т.д.

А если я не буду передавать флаг, откуда я возьму сами данные? Если не из e.target.data?
Насчет отвязки приложения от последовательности. Я не знаю других способов получения данных. Ни в одном хелпе или учебнике я не видел чтобы учили орагнизации структуры, везде только функции которые понадобятся. Да и вообще не думаю что в этом проблема.

И да, я не знаю как отсортировать ассоциативный массив. Сейчас час просидел. Ничего не нашел, и ничего не получилось самому написать. Буду очень признателен если напишете пример сортировки по алфавиту. Или хотябы ссылку кинете где копать.

P.S. Насчет цЫклов - я вроде исправил, причем сразу. Откуда откопали старую версию поста незнаю.

derhab 02.10.2010 17:28

Где пробелы? Вы написали, что получаете строку в таком виде
Цитата:

Сообщение от Gh >k (Сообщение 939593)
Получаю ID1=Один&ID2=Два&ID3=Три

и надо ее обработать...

например, по алфавиту:

Код AS3:

var str:String = 'ID1=Один&ID2=Два&ID3=Три';
var list:Array = str.split('&');
 
var data:Array = [];
for each(var s:String in list){
        var a:Array = s.split('=');
        var o:Object = {};
        o.prop = a[0];
        o.value = a[1];
        data.push(o);
}
data.sortOn('value');
 
for each(var obj:Object in data)
trace('var = ' + obj.prop + ', value = ' + obj.value);
// prop = ID2, value = Два
// prop = ID1, value = Один
// prop = ID3, value = Три


Gh >k 03.10.2010 10:26

Спассибо! Наконец то получилось. Остальное только осталось переделать под этот массив и всё.

А насчет строки - это я для примера приводил, чтобы понятней было. На самом деле там другие данные.


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

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