[英]Use of XML / XML Attributes in Flex
我是XML和XML属性的新手。 我已经阅读了一些XML文档,其中XML可以用两种方式表示:
方法1
<?xml version="1.0" encoding="UTF-8"?>
<CATALOG>
<CD>
<TITLE>Empire Burlesque</TITLE>
<ARTIST>Bob Dylan</ARTIST>
<COUNTRY>USA</COUNTRY>
<COMPANY>Columbia</COMPANY>
<PRICE>10.90</PRICE>
<YEAR>1985</YEAR>
</CD>
<CD>
<TITLE>Hide your heart</TITLE>
<ARTIST>Bonnie Tyler</ARTIST>
<COUNTRY>UK</COUNTRY>
<COMPANY>CBS Records</COMPANY>
<PRICE>8.90</PRICE>
<YEAR>1988</YEAR>
</CD>
</CATALOG>
方法-2
<?xml version="1.0" encoding="UTF-8"?>
<CATALOG>
<CD TITLE="Empire Burlesque" ARTIST="Bob Dylan" COUNTRY="USA" COMPANY="Columbia" PRICE="10.90" YEAR="1985"/>
<CD TITLE="Hide your heart" ARTIST="Bonnie Tyler" COUNTRY="UK" COMPANY="CBS Records" PRICE="8.90" YEAR="1988"/>
</CATALOG>
但是例如,当我使用此函数过滤价格> = 9的位置并在网格中显示数据时。 当使用XML Way 1时,它工作正常,但是当我使用XML Way 2时,datagrid为空。 另请注意,我在每个DatagridColumn的数据字段上使用@ Binding。 我的过滤器功能如下:
private function myFilter(xml:XML):Boolean
{
return Number(xml.PRICE) >= 9;
}
谢谢
在方式2中,价格是属性,而不是子标签,因此应使用@ symobl访问。
因此,对于方法2,您的过滤器功能应为:
private function myFilter(xml:XML):Boolean
{
return Number(xml.@PRICE) >= 9;
}
请注意PRICE之前的@。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.