您好我是Flash新手并且正在使用Flash Builder 4.6
我有一个包含此类电子邮件和密码的表单
<s:Form x="33" y="290" width="228" height="97">
<s:FormItem label="Email" >
<s:TextInput id="emailText"/>
</s:FormItem>
<s:FormItem label="Password" >
<s:TextInput id="passwordText"/>
</s:FormItem>
</s:Form>
我想创建一个用于POST的XML文件并完成此操作
<fx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.controls.Text;
public var strXmlTextInput1:String = "<dfapi><email>" + emailText + "</email><password>" + passwordText + "</password><duration>0</duration></dfapi>";
protected function button_clickHandler(event:MouseEvent):void
{
Operation1Result.token = session.Operation1(strXmlTextInput1);
Alert.show(strXmlTextInput1);
}
]]>
</fx:Script>
但是POST的XML将变量emailText和passwordText作为null传递。如果我用实际值替换变量,它工作正常。
我做错了什么?!
答案 0 :(得分:1)
当你写:
public var strXmlTextInput1:String = "<dfapi><email>" + emailText + "</email><password>" +
passwordText + "</password><duration>0</duration></dfapi>";
您指的是由 emailText 命名的 s:TextInput 组件,因此隐式转换为String
会返回NULL
。< / p>
要使用视频中显示的文字,您必须使用text
属性,如下所示:
public var strXmlTextInput1:String = "<dfapi><email>" + emailText.text +
"</email><password>" + passwordText.text +
"</password><duration>0</duration></dfapi>";