添加到字符串中时,Flash Flex 变量为空

Flash Flex variables are null when added in String

您好,我是 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>

但是 POSTed 的 XML 已将变量 emailText 和 passwordText 作为 null 传递。如果我用实际值替换变量,它工作正常。

我做错了什么?!

当你写:

public var strXmlTextInput1:String = "<dfapi><email>" + emailText + "</email><password>" +
    passwordText + "</password><duration>0</duration></dfapi>";

您指的是您命名为 emailText 的组件 s:TextInput,因此隐式转换为 String returns NULL.

要使用视频中出现的文字,您必须使用 text 属性,如下所示:

public var strXmlTextInput1:String = "<dfapi><email>" + emailText.text + 
    "</email><password>" + passwordText.text + 
    "</password><duration>0</duration></dfapi>";