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

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

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

Регистрация: Nov 2009
Сообщений: 481
Отправить сообщение для deman455 с помощью ICQ
The bomb! Редактирование динамического текста !

К примеру есть текст (уже во флеш, в динамическом поле).
Код:
<Name>Alfa,Pet,Ors</Name> //все имена игроков
<itemID>Палка,зажигалка,спича,1,2,3</itemID> //шмот
<nameID>231 //id игрока
<it>7,8,9,10,11,12</it> //инвентарь игрока
<stat>12,13,14,15,18,19</stat> //статы игрока
</nameID>
Вопрос :
Мне надо изменить только одну цифру (к примеру) <it>7,8,9,10,11,12</it> на <it>7,8,9,10,18,12</it> . Как мне это сделать использую array[...] ?

Кто не понял, разъясню. В цифрах указанных выше, мне надо изменить лишь одну цифру, при этом не заменяя весь текст. (потом это все дело пойдет на php, а оттуда на xml) .
Все да ничего, но при этом мне надо еще указать каким то образом childNodes[...] а потом и array...
Помогите кто то пожалуйста, срочно !

Старый 17.02.2010, 17:22
fessor вне форума Посмотреть профиль Отправить личное сообщение для fessor Найти все сообщения от fessor
  № 2  
Ответить с цитированием
fessor

Регистрация: Oct 2009
Сообщений: 101
динамическое текстовое поле это String;
slice(); - вот ваш метод, прийдется разбить строку на две подстроки и добавить нужный параметр между ними;
Если пойти по правильному (читайте сложному) пути - нужно написать "парсер" переменных одного файла в специальные переменные (строгая иерархия) и обратный сбор этих переменных в один файл;

Старый 17.02.2010, 17:34
deman455 вне форума Посмотреть профиль Отправить личное сообщение для deman455 Найти все сообщения от deman455
  № 3  
Ответить с цитированием
deman455
[+1 25.04.11]

Регистрация: Nov 2009
Сообщений: 481
Отправить сообщение для deman455 с помощью ICQ
fessor , эм, я почти понял ) но можешь хотя бы пример навести ? ... Очень надо, пожалуйста !

Старый 17.02.2010, 18:14
alexcon314 вне форума Посмотреть профиль Отправить личное сообщение для alexcon314 Найти все сообщения от alexcon314
  № 4  
Ответить с цитированием
alexcon314
listener

модератор форума
Регистрация: Jun 2006
Сообщений: 3,260
Записей в блоге: 28
Отправить сообщение для alexcon314 с помощью ICQ
я так понял, что этот ваш хмл - реально XML распарсенный классом XML? или это тупо просто строка? Хотя, раз вы заикнулись по ChildNodes, то скорее первое..
Ну так находите нод <stat> в ващем хмл-е, выцепляйте значение оного в переменную типа String, чтобы получилось примерно так:
Код:
var statValue:String = "12,13,14,15,18,19" // здесь я опустил поиск нода, типа уже добрались до его значения.
var tmp:Array = statValue.split(",");
tmp[4] = 16;// поменяли 18 на 16
statValue = tmp.join(","); // имеем теперь строку "12,13,14,15,16,19"
// ну тут записываем эту строку обратно в нод stat.
И да, вы опять криво назвали тему.


Последний раз редактировалось alexcon314; 17.02.2010 в 18:23.
Старый 17.02.2010, 20:58
deman455 вне форума Посмотреть профиль Отправить личное сообщение для deman455 Найти все сообщения от deman455
  № 5  
Ответить с цитированием
deman455
[+1 25.04.11]

Регистрация: Nov 2009
Сообщений: 481
Отправить сообщение для deman455 с помощью ICQ
Да, работает, только вот не пойму
Код AS1/AS2:
var string:String = _root.all; //Мой String (1,2,3)
    var array:Array = string.split(",");     
    array[2]=999;
    statValue = array.join(",");
А в тексте остается все тот же 1,2,3 . Может, обновить надо этот динамический текст ? Если да, то как ??

Добавлено через 2 минуты
Изванюсь
Код AS1/AS2:
var string:String = _root.all; //Мой String (1,2,3)
    var array:Array = string.split(",");     
    array[2]=999;
    string = array.join(","); //ошибся, но всеровно, ничего не перезаписывает!
Добавлено через 8 минут
Потому что вот, что я сделал
Код AS1/AS2:
_root.button.gotoAndPlay(26);
    var string:String = _root.loadall;
    var array:Array = string.split(",");     
    array[2]=999;
    string = array.join(","); 
    _root.test=array[2];//записал array[2] в новую переменную
и получилось то, что надо
[IMG]http://s001.***********/i194/1002/01/8eeb32fc77ac.jpg[/IMG]

Добавлено через 9 минут
Как обновить старые значения ???

Добавлено через 15 минут
Код AS1/AS2:
for (i=1;i<=3;i++){
    _root.test+=array[i]+',';
    }
вот и все мое обновление.

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

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

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


 


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


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