2011-07-18 51 views
1

我正在使用FlashBuilder 4.5 for PHP。我有一个简单的MySQL表,其中包含字段{tID,tName}。Flex - 如何将Flex DropDownList的选定项目的ID发送到服务器?

我可以像下面那样在Flex窗体中填充DropDownList。 DropDownList中显示了人的名字没有问题:

<s:Form defaultButton="{button}"> 
<s:FormItem label="myList: "> 
    <s:DropDownList id="dropDownList" creationComplete="dropDownList_creationCompleteHandler(event)" > 
    <s:AsyncListView list="{getPeopleResult.lastResult}"/> 
    </s:DropDownList> 
</s:FormItem> 
<s:Button id="button" label="Submit"click="button_clickHandler(event)"/> 
</s:Form> 

在我button_clickHandler功能,我想获得从下拉列表中选择项目的ID:

protected function button_clickHandler(event:MouseEvent):void 
{ 
person.tID=dropDownList.selectedItem as int; 

createpersonResult.token=personservice.createperson(person); 
} 

以上不起作用。我将不胜感激任何帮助!

+0

你有没有尝试:person.tID = dropDownList.selectedItem为字符串; – michael

回答

0

你可能需要这种或类似:

person.tID=dropDownList.selectedItem.tID as int; 

dropDownList.selectedItem直值大概是“[对象]” - 最有可能是person对象与领域tIDtName

这是基于我的猜测过的代码,我可以迄今看到... :)

0

您应始终使用parseInt()或parseFloat()进行从Number到String的转换。这将解决你的问题。

+0

甜!现在,这是有效的。我现在可以在添加新人时将正确的数据发送到服务器。现在,问题是数据网格没有正确更新。 – shailenTJ

+0

由于问题是不同的,我创建了一个新的问题:http://stackoverflow.com/questions/6744972/flex-datagrid-not-updated-properly – shailenTJ

+0

Datagrid现在更新没有问题!非常感激你的帮助! – shailenTJ

相关问题