1

アクション スクリプト 3 を使用してアプリケーションを構築しています。Web から XML を取得していますが、ノード名は mms:Image mms:Results などです。アクション スクリプト コンパイラは、ノードにセミコロンが表示されるとは想定していないため、エラーをスローしています。名前。ノードにアクセスするにはどうすればよいですか?

ありがとう

4

1 に答える 1

5

これらは XML 名前空間であり、使用するのが面倒な場合があります。XML 名前空間の使用に関する Adob​​e のドキュメントを参照してください。

基本的に、名前空間を取得する必要があります。

var mmsNS:Namespace = message.namespace("mms");

// alternatively for nested namespaces:

var mmsNS:Namespace = new Namespace("mms", " ... url of namespace ... ");

そして、それが適用されるノードを取得したいときにそれを使用します:

var data:XML = message.@mmsNS::Results;

すべての xml が特定の名前空間にある場合のショートカットは、デフォルトの名前空間を設定することです。

default xml namespace = mmsNs;

編集:アクセスしようとしている XML 名前空間は、XML フラグメント内で宣言する必要があります。

<root xmlns:mms="http://example.com/mms">
    <mms:someNode someAttr="someVal" />
</root>

XML 名前空間の w3c ドキュメントを参照して、ドキュメントが適切な形式であることを確認してください (場合によっては、バリデーターを通過することもあります)。

于 2010-06-09T21:12:02.200 に答える