2011-06-10 24 views
1

我有一個XML發現其一個節點發生的位置屬性,我們有值在AS3

<p id="section02_01"/> 
<p id="section02_02"/> 
<p id="section02_03"/> 
<p id="section02_04"/> 
<p id="section02_05"/> 
<p id="section02_06"/> 
<p id="section02_07"/> 
    <p id="section02_08"/> 

我有id作爲section02_05的價值。我怎樣才能找到使用XML或E4X的相應p節點的位置。假設這是根節點。

+0

究竟你「位置」是什麼意思?我假定你的意思是XML樹中節點的深度,並根據這個假設做出了回答,但是你的意思是? – jhocking 2011-06-10 14:58:19

回答

3

如果有理解你的問題,你可以使用的方法childIndex

var xml:XML=<xml> 
<p id="section02_01"/> 
<p id="section02_02"/> 
<p id="section02_03"/> 
<p id="section02_04"/> 
<p id="section02_05"/> 
<p id="section02_06"/> 
<p id="section02_07"/> 
<p id="section02_08"/> 
</xml> 

trace(xml.p.(@id=="section02_05").childIndex()) 
0

好第一關,你可以解析使用屬性過濾器節點如下所述: http://www.kirupa.com/developer/flashcs3/using_xml_as3_pg6.htm

然後,一旦你有一個節點,你可以找到它在XML樹中的位置,通過使用父()N:http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/XMLList.html#parent%28%29

編寫一個遞歸函數,它們都會到達節點的父節點,並且保持遞歸函數的次數*,然後當parent()返回「undefined」時停止遞歸*。

*這是一個真正的詞?我希望你明白我的意思。

相關問題