-1

私のノードは次のとおりです。

<node Dep_MandMARA_SATNR="H_H_H" Dep_MandMARCSTDPD="H_H_H" MARA_SATNR="" MARCSTDPD="" MATL_GROUP="001" MATL_TYPE="ZCNI" rendReq="no" sno=""/>

item:Object に格納されます

そこから MATL_GROUP を取得する必要があります。

解決策を教えてください。

4

2 に答える 2

0

xml.@[attrName] が機能していません.... xml["@"+attrName];

于 2013-05-07T06:34:09.133 に答える
0

XML ノードを効率的に使用するには、XML クラスを使用する必要があります。

この場合、次のようにできます。

<?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="init()">
<fx:Script>
    <![CDATA[
        import mx.controls.Alert;

        private var xml:XML = new XML(
            <node Dep_MandMARA_SATNR="H_H_H" Dep_MandMARCSTDPD="H_H_H" MARA_SATNR="" MARCSTDPD="" MATL_GROUP="001" MATL_TYPE="ZCNI" rendReq="no" sno="513314681"/>
        );

        protected function init():void
        {
            var matlGroup:String = xml.@MATL_GROUP;
            Alert.show(matlGroup);
        }

    ]]>
</fx:Script>
</s:Application>

プロパティ名を動的に使用できるようにしたい場合は、次のようにします。

        protected function init():void
        {
            var attrName:String = "MATL_TYPE";
            var matlGroup:String = xml.@[attrName];
            Alert.show(matlGroup);
        }
于 2013-04-20T15:16:08.733 に答える