方法1:采用URLVariables对象
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute" fontSize="12"
>
<mx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.rpc.events.ResultEvent;
//对提交给后台的参数进行UTF-8的编码处理
private function httpEncoding(param:String):String{
return encodeURIComponent(param);
}
private function httpEncoding0(param:String):String{
return param;//encodeURI(param);
}
private function doRequest():void{
btn_do.enabled=false;
var url:String = "http://localhost:8600/grid.jsp";
//以下那样写后台会乱码,不管是否做URI编码转换
//url += "?user="+httpEncoding0("用户名");
//url += "&psw="+httpEncoding0("密码");
//trace(url);
srv.url = url;
//srv.send();
//以下这样写正常
var params:URLVariables = new URLVariables();
//这个user,psw就是传入后台的参数user,jsp就用 request.getParameter("user")来取
params.user = httpEncoding("用户名");
params.psw = httpEncoding("密码");
srv.send(params);
}
private function resultHandler(event:ResultEvent):void{
Alert.show("与后台交互结束,前台开始取得的数据...","提示信息");
btn_do.enabled=true;
}
]]>
</mx:Script>
<mx:HTTPService id="srv" result="resultHandler(event);"/>
<mx:Panel title="测试与jsp后台交互" layout="absolute" width="100%" height="90%">
<mx:Button id="btn_do" label="取得数据" click="doRequest();"/>
<mx:Spacer height="1"/>
<mx:DataGrid dataProvider="{srv.lastResult.catalog.product}" width="100%" height="100%" y="28"/>
</mx:Panel>
</mx:Application>
方法2:采用<mx:request/>,同时也演示了mx:State的用法,[来自网上]
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:states>
<mx:State name="Logged In">
<mx:SetProperty target="{panel1}" name="width" value="95%"/>
<mx:SetProperty target="{panel1}" name="height" value="95%"/>
<mx:RemoveChild target="{password}"/>
<mx:RemoveChild target="{username}"/>
<mx:RemoveChild target="{label1}"/>
<mx:RemoveChild target="{Submit}"/>
<mx:RemoveChild target="{label2}"/>
<mx:SetProperty target="{panel1}" name="title" value="Members Section"/>
<mx:AddChild relativeTo="{panel1}" position="lastChild">
<mx:Label x="10" y="10" text="Welcome to the Members Section!"/>
</mx:AddChild>
<mx:AddChild relativeTo="{panel1}" position="lastChild">
<mx:Label x="10" y="36" text="Here you can do great things, like join the forums @ Viper Creations!"/>
</mx:AddChild>
<mx:AddChild relativeTo="{panel1}" position="lastChild">
<mx:Label x="10" y="62" text="Label"/>
</mx:AddChild>
</mx:State>
</mx:states>
<mx:Script>
<![CDATA[
import mx.rpc.events.ResultEvent;
]]>
</mx:Script>
<mx:Script>
<![CDATA[
private function checkLogin(evt:ResultEvent):void
{
if(evt.result.loginsuccess == "yes")
{
currentState = "Logged In";
}
if(evt.result.loginsuccess == "no")
{
mx.controls.Alert.show('Invalid username/password');
}
}
]]>
</mx:Script>
<mx:HTTPService id="login_user" result="checkLogin(event)" showBusyCursor="true" method="POST" url="http://www.vipercreations.com/site_admin/login.php" useProxy="false">
<mx:request xmlns="">
<username>
{username.text}
</username>
<password>
{password.text}
</password>
</mx:request>
</mx:HTTPService>
<mx:Panel resizeEffect="Resize" width="250" height="200" layout="absolute" title="Login System" horizontalCenter="0" verticalCenter="-2" id="panel1">
<mx:Label x="10" y="10" text="Username:" id="label1"/>
<mx:TextInput x="10" y="36" id="username"/>
<mx:Label x="10" y="66" text="Password:" id="label2"/>
<mx:TextInput x="10" y="92" id="password" displayAsPassword="true"/>
<mx:Button x="10" y="122" label="Submit" id="Submit" click="login_user.send();"/>
</mx:Panel>
</mx:Application>
分享到:
相关推荐
在本文中,我们将深入探讨使用Flex构建登录表单的相关知识点。 1. **Flex基础**: Flex提供了MXML和ActionScript 3.0两种主要的编程语言,MXML是一种声明式语言,主要用于UI组件的布局和配置,而ActionScript 3.0...
实际开发中,你可能需要在这段代码中实现数据验证,或者利用Flex的HTTPService发送数据到服务器。 **五、预览和测试** 1. 点击工具栏上的“Run”按钮或按F11,Flex Builder会编译项目并在内置的浏览器中打开一个...
在 Flex 开发中,HTTPService 是一个非常重要的组件,它允许我们从远程服务器获取数据,这些数据可以是 XML、JSON 或其他格式。本教程将详细解释如何使用 MXML 标签来配置 HTTPService,并将接收到的 XML 数据转换为...
在Flex应用中,HTTPService常用于获取或提交数据,例如从服务器检索JSON或XML格式的数据,或者提交表单数据到后端服务。 首先,我们需要了解HTTPService的基本使用。在MXML中,你可以创建一个HTTPService实例,并...
- 当表单提交时,发送HTTP请求,携带用户输入的数据。 - 数据返回后,显示在DataGrid中。 - PHP端: - 接收POST请求中的数据,处理后,将结果返回到FLEX客户端。在这个例子中,PHP可能从请求中提取username和...
这将涉及到Flex中的HTTPService或WebService组件,以及数据处理和错误处理机制。 总结来说,这个“flex入门打包教程”旨在引导初学者快速进入Flex开发的世界,从环境搭建开始,逐步掌握Flex与Java的整合、基本编程...
例如,当用户点击一个按钮时,可以触发一个事件,然后通过事件处理函数来执行特定的操作,如打开一个新的窗口、提交表单数据或更新UI元素的状态。 ### 网络通信 Flex框架还提供了一套强大的网络通信工具,使得Flex...
然后,通过HTTPService或WebService组件向服务器发送POST请求,将新数据提交到数据库。 2. **读取(Read)**:读取数据通常是通过从服务器请求数据并将其显示在界面上完成的。Flex中的List、DataGrid等组件可以绑定...
Flex Air 是Adobe开发的一款用于构建桌面应用程序的框架,它基于...这两个文件在实现上述导出Excel功能时并不是直接相关的,但它们可能用于构建Flex Air应用的用户界面,比如创建用于导出数据的按钮或表单。
开发者可以使用HTTPService或WebService组件轻松地调用远程服务,获取和提交数据。 9. **Adobe AIR**:除了Web应用,Flex还可以用来开发桌面应用,通过Adobe AIR(Adobe Integrated Runtime)在用户的计算机上运行...
在教程中,你会学到如何使用XMLSocket或HTTPService组件与后台服务器通信,实现数据的获取和提交。 四、Flex与Java集成 Flex与Java的交互主要通过AMF(Action Message Format)协议完成,它提供了高效的数据序列化...
在Flex中,这些类用于发送AJAX请求,处理RESTful API或SOAP服务,实现异步数据加载和提交。 2. **Common_Math**:这个部分可能包含了一些数学相关的算法和工具类,例如几何计算、坐标转换或者图形渲染中的数学支持...
1. 数据库连接:在FLEX4应用中,通常使用RemoteObject或HTTPService组件来与服务器进行通信。RemoteObject适用于AMF协议,可以实现高效的数据传输;HTTPService则适用于RESTful API,提供XML或JSON格式的数据交换。 ...
首先,HTTPService是最基础的交互方式,它基于HTTP协议,使用GET和POST方法来传输数据,类似于传统的Web表单提交。由于其通用性强,几乎所有的Web服务器都能支持。HTTPService的优点在于其简单易用,传输的数据量较...
例如,当网页加载完成后,可以设置网页中的表单字段值: ```xml (event)"> <mx:location>http://xxx</mx:location> private function autoFill(event:Event):void{ var doc:Object = event.currentTarget....
表单提交后,这些信息被发送到ASP.NET服务器进行验证。这个过程通常涉及到HTTP服务请求,例如使用 `HTTPService` 类在AS3中发送POST请求。 ASP.NET 是微软的Web开发平台,允许开发者使用.NET Framework创建动态网站...
在Flex中,创建登录界面通常涉及到自定义控件,例如创建一个包含用户名和密码输入框的表单,以及登录按钮。这些控件可能需要处理用户输入,验证数据,与服务器通信(例如使用HTTPService或WebService)来进行身份...
例如,用户可能需要从服务器获取数据来动态更新UI,或者提交表单数据到服务器进行处理。掌握这些技术能够帮助开发者创建出交互性强、响应速度快的富互联网应用。 总的来说,这份“flex as资料”可能是对Flex和...
JavaScript库通常嵌入到HTML页面中,通过执行脚本来处理事件,如按钮点击、表单提交等,从而与服务器进行交互。 接着,我们来看“flex_flex login”。在Flex中,开发人员可以使用MXML来声明界面组件和布局,以及...