2010-01-25 2 views
0

이 주제에 대한 관련 게시물을 보았지만 문제를 해결하는 방법을 찾을 수 없습니다. 나는 그것이 월요일에 있다는 사실과 관련이 있다고 생각한다.Flex : XML 객체의 노드 바꾸기

글쎄, 여기 있습니다. 나는 포함하는 XML 개체가 있습니다 :

<root> 
    <page> 
     <text> 
     <style properties=""/> 
     <label> Text one</label> 
     </text> 
     <text> 
     <style properties=""/> 
     <label> Text two</label> 
     </text> 
    </page> 
    <page> 
     <text> 
     <style properties=""/> 
     <label> Text three</label> 
     </text> 
     <text> 
     <style properties=""/> 
     <label> Text four</label> 
     </text> 
    </page> 
</root> 

그리고 레이블 노드 만 새 것으로 바꾸고 싶습니다. 나는 새로운 것들을 XMLList에 넣었지만 실제 노드를 대체하기 위해 어떻게해야할까요?

<page> 
    <text> 
     <style properties=""/> 
     <label> Replace the first one</label> 
    </text> 
    <text> 
     <style properties=""/> 
     <label> Replace the second one</label> 
    </text> 
</page> 
<page> 
    <text> 
     <style properties=""/> 
     <label> Replace the third one</label> 
    </text> 
    <text> 
     <style properties=""/> 
     <label> Replace the fourth one</label> 
    </text> 
</page> 

답변

2

간단한 예 :

// xml = your XML object  
xml.page[0].text[0].label = 'new text'; 
xml.page[0].text[1].label = 'new text 2'; 
trace (xml.toXMLString()); 

반환 :

<root> 
    <page> 
    <text> 
     <style properties=""/> 
     <label>new text</label> 
    </text> 
    <text> 
     <style properties=""/> 
     <label>new text 2</label> 
    </text> 
    </page> 
    <page> 
    <text> 
     <style properties=""/> 
     <label>Text three</label> 
    </text> 
    <text> 
     <style properties=""/> 
     <label>Text four</label> 
    </text> 
    </page> 
</root> 
+0

T 행크스! 그것은 결국 정말로 간단했습니다. – eldamar

+0

두 번째 질문이기 때문에 답변을 수락하지 않았거나 아무에게도 투표하지 않았습니다. http://stackoverflow.com/faq를 읽어서 StackOverflow가 어떻게 작동하는지 확인하십시오. 특히 "여기 어떻게 질문하나요?" 섹션. 건배 –

+0

죄송합니다. 답안 수락에 대해 몰랐습니다. 나는 대답에 투표하려했지만 그렇게 할만한 충분한 점수가 없었습니까? faq을보아야 할 것입니다. 링크를 이용해 주셔서 감사합니다. – eldamar

0

당신은 XMMList를 얻기 위해 E4X를 사용하고있는 다음 부모 함수의 XMLList가 보이는 방법이다 루프를 사용하거나 목록에서 원하는 작업을 수행하십시오.

var r:XML=<root> 
    <page> 
    <text> 
     <style properties=""/> 
     <label>new text</label> 
    </text> 
    <text> 
     <style properties=""/> 
     <label>new text 2</label> 
    </text> 
    </page> 
    <page> 
    <text> 
     <style properties=""/> 
     <label>Text three</label> 
    </text> 
    <text> 
     <style properties=""/> 
     <label>Text four</label> 
    </text> 
    </page> 
</root>; 

var xl:XMLList=r.page.text.label; 
// use the first element of the list 
xl[0].parent().label="i do what i want"; 


var i:int=0; 
// or loop over each elment if the list 
for each (var xml:XML in xl){ 
    xml.parent().label=i + " : " + xml.toString(); 
    i++; 
}