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

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

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

Регистрация: Dec 2010
Сообщений: 5
По умолчанию частичный экспорт данных из .xml

Доброго дня, уважаемые Флешеры!
Столкнулся с такой проблемкой:

есть 1 ключевой кадр с динамик полями под данные по сотрудникам;

содержимое xml файла:
Код:
<?xml version="1.0" encoding="iso-8859-1" ?>

<staff>

<pers>
<dep> Сотрудники </dep>

<duty>Генеральный директор</duty>
<name>Иван Иваныч</name>
<tel>100</tel>
<email>n@mail.ru</email>
<phone>8-888-88-88</phone>
</pers>

<pers>
<duty>Финансовый директор</duty>
<name>Семен Семеныч</name>
<tel>200</tel>
<email>s@mail.ru</email>
<phone>9-999-99-99</phone>
</pers>

<pers>
<duty>Менеджер</duty>
<name>Вася</name>
<tel>666</tel>
<email>v@mail.ru</email>
<phone>6-666-66-66</phone>
</pers>

</staff>

Код AS2:


Код AS1/AS2:
myGalleryXML = new XML();
myGalleryXML.ignoreWhite = true;
myGalleryXML.onLoad = loadXML;
 
myGalleryXML.load("staff.xml");
 
function loadXML(loaded) {
     if (loaded) {
 
          _root.dep1 = this.firstChild.childNodes[0].childNodes[0].firstChild.nodeValue;
 
          _root.duty100 = this.firstChild.childNodes[0].childNodes[1].firstChild.nodeValue;
          _root.name100 = this.firstChild.childNodes[0].childNodes[2].firstChild.nodeValue;
          _root.tel100 = this.firstChild.childNodes[0].childNodes[3].firstChild.nodeValue;
          _root.email100 = this.firstChild.childNodes[0].childNodes[4].firstChild.nodeValue;
          _root.phone100 = this.firstChild.childNodes[0].childNodes[5].firstChild.nodeValue;
 
          _root.duty200 = this.firstChild.childNodes[1].childNodes[0].firstChild.nodeValue;
          _root.name200 = this.firstChild.childNodes[1].childNodes[1].firstChild.nodeValue;
          _root.tel200 = this.firstChild.childNodes[1].childNodes[2].firstChild.nodeValue;
          _root.email200 = this.firstChild.childNodes[1].childNodes[3].firstChild.nodeValue;
          _root.phone200 = this.firstChild.childNodes[1].childNodes[4].firstChild.nodeValue;
          _root.email200btn = this.firstChild.childNodes[1].childNodes[5].firstChild.nodeValue;
 
          _root.duty300 = this.firstChild.childNodes[2].childNodes[0].firstChild.nodeValue;
          _root.name300 = this.firstChild.childNodes[2].childNodes[1].firstChild.nodeValue;
          _root.tel300 = this.firstChild.childNodes[2].childNodes[2].firstChild.nodeValue;
          _root.email300 = this.firstChild.childNodes[2].childNodes[3].firstChild.nodeValue;
          _root.phone300 = this.firstChild.childNodes[2].childNodes[4].firstChild.nodeValue;
 
          _root.dep.text = _root.dep1;
          _root.duty1.text = _root.duty100;
          _root.name1.text = _root.name100;
          _root.tel1.text = _root.tel100;
          _root.email1.text = _root.email100;
          _root.phone1.text = _root.phone100;
 
          _root.duty2.text = _root.duty200;
          _root.name2.text = _root.name200;
          _root.tel2.text = _root.tel200;
          _root.email2.text = _root.email200;
          _root.phone2.text = _root.phone200;
 
          _root.duty3.text = _root.duty300;
          _root.name3.text = _root.name300;
          _root.tel3.text = _root.tel300;
          _root.email3.text = _root.email300;
          _root.phone3.text = _root.phone300;
 
          }
}


При старте флешки данные подтягиваются в соответствующие поля, но это происходит только с первыми двумя сотрудниками, т.е. Вася менеджер не отображается и в полях под него идет "undefined"
То же самое с последующими полями для других сотрудников, везде проставляется "undefined"

Подскажите пожалуйста, как можно обойти этот момент. И почему все-таки информация не отображается.
Спасибо!


Последний раз редактировалось udaaff; 14.12.2010 в 18:15.
Старый 14.12.2010, 18:15
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 2  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Для оформления своего кода надо использовать соответствующие теги.

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

Регистрация: Dec 2010
Сообщений: 5
Спасибо! постараюсь так делать

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

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
В примере ошибок не заметно.

Старый 14.12.2010, 18:33
regenzer вне форума Посмотреть профиль Отправить личное сообщение для regenzer Найти все сообщения от regenzer
  № 5  
Ответить с цитированием
regenzer

Регистрация: Dec 2010
Сообщений: 5
оки - сейчас еще раз все перепроверю

Старый 14.12.2010, 18:35
dark256 вне форума Посмотреть профиль Отправить личное сообщение для dark256 Посетить домашнюю страницу dark256 Найти все сообщения от dark256
  № 6  
Ответить с цитированием
dark256
 
Аватар для dark256

блогер
Регистрация: Apr 2008
Адрес: SPb
Сообщений: 3,718
Записей в блоге: 5
Отправить сообщение для dark256 с помощью ICQ Отправить сообщение для dark256 с помощью Skype™
Скомпилил - работает. Через анус конечно, но пашет.
Советы:
1. Сохраняйте XML __всегда___ в UTF-8.
Соотв заголовок д.б. такой:
Код:
<?xml version="1.0" encoding="utf-8"?>
Ну и редактор соответствующий.

2. Перед вставкой значений в текстовые поля, проверьте содержимое полученных переменных, для удобства и наглядности отладки.
Перед "_root.dep.text = _root.dep1;" вставьте вот это:
Код AS1/AS2:
 for ( var Q in _root ) trace( Q +" == "+_root[Q])
У вас там слишком все от руки написано, скорее всего просто запутались.
__________________
FLASHER.MAP SOUNDSTAGE / CS3 / AS2

Старый 14.12.2010, 18:38
regenzer вне форума Посмотреть профиль Отправить личное сообщение для regenzer Найти все сообщения от regenzer
  № 7  
Ответить с цитированием
regenzer

Регистрация: Dec 2010
Сообщений: 5
dark256, спасибо!

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

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

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


 


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


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