为组合框设置xml dataprovider时出现问题

时间:2009-11-02 11:45:14

标签: flex combobox dataprovider

我试图通过使用php文件获取组合框的下拉列表。该php文件返回一个xml字符串,该字符串已被用作组合框的数据提供者。

我也跟着this thread,但徒劳无功。

详情
我已将mx:Application的creationComplete属性设置为init()。在init()函数中,我发送了以下HTTPService

<mx:HTTPService id="interfaces" url="interfaces.php" resultFormat="e4x" method="POST"> 
 </mx:HTTPService>

组合框:
    

更新: xml应该看起来像

<?xml version=\"1.0\" encoding=\"utf-8\"?>
  <ifaces>
    <iface>
      <option>eth0</option>
    </iface>
    <iface>
      <option>eth1</option>
    </iface>
  </ifaces>

但是如果我在浏览器中执行interfaces.php,那么唯一可以显示的东西就是     eth0eth1 而我正在回应包含整个xml数据的字符串。不应该整个xml类型的字符串显示? :(

1 个答案:

答案 0 :(得分:1)

问题是ifaces是XML的根元素,所以interfaces.lastResult == ifaces。所以你想要的XMLList是interfaces.lastResult.iface。

这是一个适合我的主要课程:

`&lt; mx:Application xmlns:mx =“http://www.adobe.com/2006/mxml” 布局=“垂直” 初始化= “{interfaces.send();}” &GT;

&lt; mx:HTTPService id =“interfaces”url =“interfaces.xml”resultFormat =“e4x”method =“POST”&gt;  &LT; / MX:的HTTPService&GT;

&lt; mx:ComboBox dataProvider =“{interfaces.lastResult.iface}”labelField =“option”/&gt;

&LT; / MX:应用程序&gt;`