Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Строка из массива не выводится в текстовое поле (http://www.flasher.ru/forum/showthread.php?t=152915)

FriOne 24.03.2011 21:36

Строка из массива не выводится в текстовое поле
 
Принимаю строку из ПХП, разбиваю ее.. целиком, не разбивая, текстовое поле выводит ее.
Если прибавить какую-нибудь строку или символ - тоже выводит, но без - нет..
Подскажите в чем может быть проблема.

Код AS3:

var datas:Array = e.target.params.slice();
for(var i=0; i < datas.length - 1; i++)
{
        var massive:Array = datas[i].split(";");
        var picture:Loader = new Loader();
        var url:String = "upload/img/3b7092e6a8a1d4338e35f76f97c70332.jpg";
        var urlReq:URLRequest = new URLRequest(url);
        var sphere:sphereDeyt = new sphereDeyt(picture, massive[0], massive[2] + "d");
        addChild(sphere);
}

e.target.params.slice(); - это первоначальная строка, var massive:Array = datas[i].split(";"); - здесь разбиваем, причем первый элемент в массиве выводит, остальные нет.

Zebestov 24.03.2011 22:20

Первоначальную строку покажи. Там точно присутствует хотя бы один символ ";"?
И еще. Ты точно хочешь просмотреть все элементы datas, кроме последнего? Или это опечатка:
Код AS3:

for(var i=0; i < datas.length -1; i++)


goodguy 24.03.2011 22:55

Я бы для начала без цикла проверил трейсом.

А сам цикл бы лучше использовал такой:
Код AS3:

for(var i:String in datas) {
 
}


FriOne 24.03.2011 23:57

Цитата:

Там точно присутствует хотя бы один символ ";"?
да, я его выводил в поле, первый элемент то выводится, а третий(я его пробывал), выводится при добавлении строки..
Цитата:

И еще. Ты точно хочешь просмотреть все элементы datas, кроме последнего?
Почему-то там на один больше нужного..
Цитата:

А сам цикл бы лучше использовал такой:
Код AS3:
for(var i:String in datas) {

}
_______
Спасиб, не знал такого.

in4core 25.03.2011 04:25

FriOne
Цитата:

Спасиб, не знал такого.
эээ ??? вы вроде давно на форуме, а это основы....

Zebestov 25.03.2011 04:45

Цитата:

Сообщение от FriOne (Сообщение 983611)
да, я его выводил в поле, первый элемент то выводится, а третий(я его пробывал), выводится при добавлении строки..

Строка засекречена спецслужбами? Покажи.

FriOne 25.03.2011 09:38

Цитата:

эээ ??? вы вроде давно на форуме, а это основы....
Ну да, просто долгое время не занимался флэшем, а этого не довелось использовать)

Цитата:

Строка засекречена спецслужбами? Покажи.
Вот часть строки:
answer=алмазное сырье;upload/img/3b7092e6a8a1d4338e35f76f97c70332.jpg;Минерал, кубическая аллотропная форма углерода.;
В скрипте я ее кодирую в UTF-8..

goodguy 25.03.2011 11:20

Код AS3:

var string:String = "answer=алмазное сырье;upload/img/3b7092e6a8a1d4338e35f76f97c70332.jpg;Минерал, кубическая аллотропная форма углерода.;";
var a:Array = string.split(";");
for (var i:String in a) {
        trace(a[i]);
}

Трейс тут выводит:
Цитата:

answer=алмазное сырье
upload/img/3b7092e6a8a1d4338e35f76f97c70332.jpg
Минерал, кубическая аллотропная форма углерода.

FriOne 25.03.2011 11:59

Цитата:

Трейс тут выводит:
Еще бы он не выводил)
Проблема не в том, что не разбивает строку,
а в том, что без добавления какой-то строчки, выводит ошибку,
если пишу любую строку, то все нормально, но из этих массивов не хочет принимать.

Gage 25.03.2011 12:05

Да ошибка просто в for.
Написано:
Код:

for(var i=0; i < datas.length - 1; i++)
а надо
Код:

for(var i=0; i < datas.length; i++)


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

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