2011-02-24 3 views
-1

Я хотел бы искать внутри XML-объекта fx | для узла с label='notifications' и внутри него узел с label='notifications2', и я хочу получить XML, содержащий то, что в нем ,flex4: fx | XML - как выполнить сложный поиск

это мой Flex 4 Код:

<?xml version="1.0" encoding="utf-8"?> 
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
      xmlns:s="library://ns.adobe.com/flex/spark" 
      xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600" creationComplete="_ccInit()"> 

<!-- Launch your application by right clicking within this class and select Debug As > FDT SWF Application --> 

<fx:Declarations> 
    <fx:XML id="moshe"> 
     <node state="root_item" label="notifications"> 
     <node state="root_item" label="notifications2"> 
       <node state="item" label="item" a="test1" b="test2" /> 
     </node> 
      <node state="root_item" label="Winnings" /> 
      <node state="root_item" label="Winnings2" /> 
      <node state="root_item" label="Winnings3" /> 
      <node state="root_item" label="Winnings4" /> 
      <node state="root_item" label="Winnings5" /> 
     </node> 
    </fx:XML> 
</fx:Declarations> 

<fx:Script> 
    <![CDATA[ 
     import mx.controls.Alert; 
     private function _ccInit():void { 
      var newXml:XML = moshe.(@label == "notifications").(@label == "notifications2") as XML; 
      Alert.show(newXml.toString());   
     } 
    ]]> 
</fx:Script> 
</s:Application> 

newXml равна нулю. как я могу решить проблему?

спасибо

+0

Никакого вреда, но вы бы не считали раскалывается, что поиск, чтобы увидеть, какая часть терпел неудачу! Как и xml-материал, так что можете попробовать его – Ryan

+0

Я уже пробовал несколько методов поиска, я вставил это, чтобы суммировать то, что я хочу достичь. – ufk

ответ

1

Ваш поиск не будет работать. Вы не определяете rootTag для moshe XML, и вы не можете иметь корневой тег, 'узлы' и 'элементы' с тем же именем. Вам нужно будет правильно отформатировать XML.

Поиск по Flex XML Поиск на StackOverflow даст множество примеров

+0

Его xml кажется правильным. Проблема в поиске: var newXml: XML = moshe. ** node **. (@ label == "уведомления"). ** node **. (@ label == "Уведомления2") ** [0] **; – alxx

+0

@alxx - Этот xml is'nt отформатирован правильно, насколько мне известно, даже если кто-то действительно определяет способ заставить поиск работать. Нет корневого тега, а дочерние узлы неотличимы от родительских узлов. – Ryan

+0

Первый узел - это корень, это просто вкладки неправильные. В противном случае он получит ошибку компиляции. – alxx

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