E4X 조건부 통화는 단 1 경기만으로 반환하지 않습니까?
-
09-09-2019 - |
문제
좋아 여기 내 코드가 있습니다.
var xml:XML =
<xml>
<typeA amount1="500" amount2="300" amount3="250" date="2008-02-17"/>
<typeA amount1="500" amount2="300" amount3="250" date="2008-02-16"/>
<typeA amount1="500" amount2="300" amount3="250" date="2008-02-17"/>
<typeB amount1="500" amount2="300" amount3="250" date="2008-02-18"/>
<typeB amount1="500" amount2="300" amount3="250" date="2008-02-19"/>
<typeC amount1="500" amount2="300" amount3="250" date="2008-02-20"/>
<typeC amount1="500" amount2="300" amount3="250" date="2008-02-21"/>
<typeC amount1="500" amount2="300" amount3="250" date="2008-02-20"/>
</xml>;
trace(xml.typeA.(@date == "2008-02-16")); // no results
trace(xml.typeA.(@date == "2008-02-17")); // finds both
trace(xml.typeC.(@date == "2008-02-20")); // finds both
trace(xml.typeC.(@date == "2008-02-21")); // no results
1 개 이상의 발생이있는 경우에만 찾는 것 같습니다.
내가 뭔가 잘못하고 있습니까?
해결책
실제로 그것을 찾지만 하나의 항목이기 때문에 XMLIST 대신 XML로 추적됩니다. 노드가 비어 있으면 빈 문자열을 추적합니다.
이 시도 :
<typeA amount1="500" amount2="300" amount3="250" date="2008-02-16">Hello</typeA>
XML을 디버깅 할 때 사용하는 것이 좋습니다 toXMLString
방법.
trace(xml.*.(@date="1980-04-29").toXMLString());
제휴하지 않습니다 StackOverflow