2011-10-21 13 views
0

XMLListから属性を抽出し、それを文字列に割り当てる必要があります。ここにXMLのスニペットを示します。変数を使用したXML属性の取得

<node> 
    <sport GAME="Squash" TIME1="2" TIME2="3" TIME3="8"/> 
    <sport GAME="Table Tennis" TIME1="4" TIME2="6" TIME3="7"/> 
</node> 

私は2つの変数を持っています。 1つの変数には、スカッシュまたは卓球のいずれかのゲームタイプが含まれます。もう一方には、次の文字列 "TIME1"、 "TIME2"または "TIME3"のいずれかが含まれます。変数は、ゲーム時間と呼ばれます。私は必要な属性を得るために以下のコードで多くのバリエーションを試しましたが、喜びはありません。だから、どんな助けでも大歓迎です。

var result:String = node.sport.(@GAME == game).(attribute(time)); 
+0

ありがとうございました。あなたが提案した方法は完全に働いた。再び多くのありがとう – Hammer

答えて

0

達成しようとしていることは完全にはわかりませんが、指定した時間属性の値を見つけようとしていると思いますか?

アトリビュート(時刻)の前後に括弧を使用しないでください。

package 
{ 
    import flash.display.Sprite; 

    public class XmlAttribute extends Sprite 
    { 
     private var xml:XML = <node> 
            <sport GAME="Squash" TIME1="2" TIME2="3" TIME3="8"/> 
            <sport GAME="Table Tennis" TIME1="4" TIME2="6" TIME3="7"/> 
           </node>; 

     public function XmlAttribute() 
     { 
      super(); 

      var game:String = "Squash"; 
      var time:String = "TIME1"; 

      var result:String = xml.sport.(@GAME == game).attribute(time); 
      trace(result); 
     } 

    } 
} 

出力がある: "TIME1" を使用して2

ゲーム "スカッシュ" は次のとおりです。2.

1

あなたはほとんど存在し、ここでテストされたコードと作品があります。

var myXML:XML = <node> 
       <sport GAME="Squash" TIME1="2" TIME2="3" TIME3="8"/> 
       <sport GAME="Table Tennis" TIME1="4" TIME2="6" TIME3="7"/> 
      </node>; 

     public function init():void { 
      var game:String = "Table Tennis"; 
      var time:String = "TIME2"; 
      var result:String = myXML.sport.(@GAME==game).attribute(time).toString(); 

      trace("Result: "+result); 
     } 
関連する問題