AS3
XMLファイルに基づいて画像を動的にロードしようとしています。Imがこだわった問題は、指定された識別子から見つかったノードを返すことになっている関数です。次のコードのように
function getStudyById(id:String):XMLNode{
var xl:XMLList = xml.bacase.(@name==id); // xml is a global variable
return xl.children()[0]; // xl[0] does not work either
// return (xl.length()>0) ? xl[0] : null;
}
XMLは次のようになります。
<root>
<bacase name="a" />
<bacase name="b" />
</root>
あなたの質問を予想して、XMLがロードされると、それはすべてxmlローダーのCOMPLETEイベントで行われます。
ここで問題となるのは、XMLが空であるように見えても、xmlが正しく入力されており、識別子がノードの1つと確実に一致していることです。クエリされたノードを複製すると、リストは2つのノードを含むものとして正しくトレースされます。したがって、一致するものが1つしかない場合、XMLListは作成されず、結果にはXMLNodeデータ型のデータが含まれると思います。
これを確認する人はいますか?もしそうなら、クエリが常にXMLListタイプを返すようにする方法はありますか?
ありがとうArtur