as3排序xml数据?

时间:2010-02-12 23:56:24

标签: xml actionscript-3 sorting combobox listbox

我有xml数据可以加载到我的flex应用程序中;但是,我需要按节点对它进行排序。

我正在尝试创建一个组合框或列表框,可以显示按字母顺序或按其所在类别排序的位置列表...

我无法理解如何格式化xml或如何编码flash文件以按字母顺序按位置名称进行排序,然后按一个按钮按类别按名称排序第一和第二按字母顺序排列。

我应该像这样格式化xml:

<POIs>
    <location>
            <name>Barbaras Bagels</name>
            <additional nodes inbetween here>
            <category>Restaurants</category>
    </location>
    <location>
            <name>Bobs Powerwashing</name>
            <addition nodes inbetween here>
            <category>Services</category>
    </location>
</POIs>

或者我应该这样格式化:

<POIs>
    <Restaurants>
        <location>
                <name>Barbaras Bagels</name>
                <additional nodes inbetween here>
        </location>
    </Restaurants>
    <Services>
        <location>
                <name>Bobs Powerwashing</name>
                <addition nodes inbetween here>
        </location>
    </Services>
</POIs>

以上示例在每个类别中只有一个名称,但我相信您可以理解

1 个答案:

答案 0 :(得分:0)

您有一组位置对象。因此,您的数组将被命名为“locations”(复数,就像您对任何数组所做的那样)。

让你的服务器做你的肮脏工作。如果只需要餐馆服务器返回带餐馆的数组。服务也是如此。如果你有很多数据,那可能会有点慢。这就是Flash Player拥有AMF(又名Flash Remoting)的原因,您需要的实现取决于您的服务器技术。

无论如何,如果你确实希望它是交错的并且是XML格式,我想这可能是我想出的格式,我会使用XPath从XML中选择所有相关节点。

<locations>
    <location>
            <name>Barbaras Bagels</name>
            <additional nodes inbetween here>
            <category>Restaurants</category>
    </location>
    <location>
            <name>Bobs Powerwashing</name>
            <addition nodes inbetween here>
            <category>Services</category>
    </location>
</locations>