Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flex+;XML+;dataProvider:将dataProvider指定给ComboBox时出现问题&;数据网格_Xml_Apache Flex - Fatal编程技术网

Flex+;XML+;dataProvider:将dataProvider指定给ComboBox时出现问题&;数据网格

Flex+;XML+;dataProvider:将dataProvider指定给ComboBox时出现问题&;数据网格,xml,apache-flex,Xml,Apache Flex,我从使用[lastResult]属性访问的PHP脚本中获得XML响应。 问题如下: XML结构: <Main> <Category1> <Data Name="Data1"> <Item> <Name>foo</Name> <Info>bar</Info> </Item> <Item>

我从使用[lastResult]属性访问的PHP脚本中获得XML响应。
问题如下:
XML结构:

<Main>
  <Category1>
    <Data Name="Data1">
      <Item>
        <Name>foo</Name>
        <Info>bar</Info>
      </Item>
      <Item>
        <Name>baz</Name>
        <Info>FOO</Info>
      </Item>
    </Data>
    <Data Name="Data2">
    </Data>
  </Category1>
  <Category2>
    </Category2>
</Main>
这很好&我的数据输出正确。我唯一需要的是如何访问
标记的@Name属性。
我可以通过指定以下内容输出项目的名称和信息:

'Name'
'Info'
但是当我选择Data.Item作为数据提供者时,我不知道如何指定父
标记的@Name属性

据我所知,我需要上升1级到父节点,但我找不到任何参考,以便在使用[lastResult]dataProvider时如何上升1级(所有人都在使用XMLListCollection::parent())
感谢您的帮助

问候,

Nisheeth Barthwal

lastResult.Category1.Data.(@Name==“Data1”)。Item
提供在Data1中找到的项的XML列表。每个项都是XML类型,您可以调用
parent()
函数get parent node:

//get first item
var item:XML = lastResult.Category1.Data.(@Name == "Data1").Item[0];
trace("Data.@Name: " + item.parent().@Name);
Edit:要使其在DataGrid中工作,需要使用列的
labelFunction
属性。将其设置为:

function formatItem(item:Object, column:DataGridColumn):String {
    return (item as XML).parent().@Name;
}

但我想在DataGrid的dataField属性中使用它。dataField=“parent()。@Name”不起作用,dataField=“(parent()。@Name)”当dataProvider=“{lastResult.Category1.Data.(@Name==“Data1”).Item}”编辑时,dataField=“(parent()。@Name)”也不起作用,但在{..}(lastResult.Category1.Data.(@Name==“Data1”).Item.parent()}内的dataField中不起作用
function formatItem(item:Object, column:DataGridColumn):String {
    return (item as XML).parent().@Name;
}