2012-03-06 3 views
1

Здравствуйте и спасибо за ваше время. Рассмотрим следующий уменьшенный пример гораздо большего применение:Flex 3: целевые данные XML с идентификатором textarea

У меня есть текстовые поля с атрибутами Ид и нажмите событие:

<mx:TextArea click="launchMyPopUp(event);" id="box1" text="blahblahblah"/> 
<mx:TextArea click="launchMyPopUp(event);" id="box2" text="blahblahblah"/> 
<mx:TextArea click="launchMyPopUp(event);" id="box3" text="blahblahblah"/> 

Они вызывают следующие функции:

private function launchMyPopUp(e:MouseEvent):void{ 
     var myId:String = e.currentTarget.id; 
     var win:Window = new Window(); 
     win.title = myId; 
     win.sourceId = myId; 
     PopUpManager.addPopUp(win,this,true); 
     PopUpManager.centerPopUp(win); 
} 

Это хорошо работает , Появится всплывающее окно с открытым var 'sourceId', введенным в тег метки. Поэтому я знаю, что получаю значение атрибута id выбранного элемента (box1, box2 или box3) во всплывающем окне.

Введите образец XML-файла:

<gallery> 
<car id="box1"> 
    <pic>camaro1.jpg</pic> 
    <title>Camaro 1</title> 
    <date>1997</date> 
</car> 
<car id="box2"> 
    <item>box2</item> 
    <pic>camaro2.jpg</pic> 
    <title>Camaro 2</title> 
    <date>1998</date> 
</car> 
<car id="box3"> 
    <item>box3</item> 
    <pic>camaro3.jpg</pic> 
    <title>Camaro 3</title> 
    <date>1999</date> 
</car> 

То, что я хотел бы видеть, когда текстовые области щелкают их соответствующее значение передается идентификатор функции всплывающего окна, которое затем используется для получения связанных дочерних данных из xml-файла и отображения его во всплывающем окне (которое является компонентом TitleWindow).

Я получил так далеко, чтобы увидеть переданную идентификатор в маркирующие во всплывающем окне:

<mx:Label text="{sourceId}"/> 

Я не знаю, как разговаривать с файлом XML со значением идентификатора. Я пробовал множество вариантов и потерпел неудачу. Любая помощь будет оценена. Ура!

ответ

0

Как насчет добавления источника XML в свойство win.data, а затем, когда у вас есть идентификатор, вы можете прорезать через this.data.car внутри окна и искать car.id == sourceId.

Когда вы обнаружите, что остальное для использования.

+0

Благодарим за помощь; вы направили меня в правильном направлении. – midasxl

Смежные вопросы