`
nuthell
  • 浏览: 30444 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

Flex与后台交互的几种方法详解(FlashVars、 HTTPService、URLLoader、WebService)

阅读更多
1.FlashVars(单向传递)

A.传递:在<embed 中设置 FlashVars=”name1=value1&name2=value2”

B.接受:在as中写入 var value1=application.parameters.name1 即可

2.HttpService

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" initialize="initializeHandler(event)">
<mx:Script>
<![CDATA[
private function initializeHandler(event:Event):void {
countriesService.send();
}
private function changeHandler(event:Event):void {
statesService.send();
}
]]>
</mx:Script>
<!-- 载入纯静态的xml数据 -->
<mx:HTTPService id="countriesService" url="http://www.rightactionscript.com/states/xml/countries.xml" />
<!-- 载入由php生成的xml数据 -->
<mx:HTTPService id="statesService" url="http://www.rightactionscript.com/states/xml/states.php">
<!-- 以下标签就是要发送到服务端的数据了,可以这样理解:有一个名为country的变量,它的值为花括号{}里的内容 -->
<mx:request>
<country>{country.value}</country>
</mx:request>
</mx:HTTPService>
<mx:VBox>
<!-- 此控件的数据由第一个<mx:HTTPService/>控件接收的内容提供,并且由这个ComboBox控制着第二个ComboBox所要显示的内容 -->
<mx:ComboBox id="country" dataProvider="{countriesService.lastResult.countries.country}"
change="changeHandler(event)" />
<!-- 下面的ComboBox已经绑定了{statesService.lastResult.states.state},随它的数据改变而改变 -->
<mx:ComboBox dataProvider="{statesService.lastResult.states.state}" />
</mx:VBox>
</mx:Application>

3.URLLoader

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" initialize="initializeHandler(event)">
<mx:Script>
<![CDATA[
private var _countriesService:URLLoader;
private var _statesService:URLLoader;
private function initializeHandler(event:Event):void {
_countriesService = new URLLoader();
_countriesService.addEventListener(Event.COMPLETE, countriesCompleteHandler);
_countriesService.load(new URLRequest("http://www.rightactionscript.com/states/xml/countries.xml"));
_statesService = new URLLoader();
_statesService.addEventListener(Event.COMPLETE, statesCompleteHandler);
XML.ignoreWhitespace = true;
}
private function countriesCompleteHandler(event:Event):void {
var xml:XML = new XML(_countriesService.data);
country.dataProvider = xml.children();
}
private function statesCompleteHandler(event:Event):void {
var xml:XML = new XML(_statesService.data);
state.dataProvider = xml.children();
}
private function changeHandler(event:Event):void {
var request:URLRequest = new URLRequest("http://www.rightactionscript.com/states/xml/states.php");
var parameters:URLVariables = new URLVariables();
parameters.country = country.value;
request.data = parameters;
_statesService.load(request);
}
]]>
</mx:Script>
<mx:VBox>
<mx:ComboBox id="country" change="changeHandler(event)" />
<mx:ComboBox id="state" />
</mx:VBox>
</mx:Application>

4.WebService方法1

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" initialize="initializeHandler(event)">
<mx:Script>
<![CDATA[
private function initializeHandler(event:Event):void {
statesService.getCountries();
}
private function changeHandler(event:Event):void {
statesService.getStates(country.value);
}
]]>
</mx:Script>
<mx:WebService id="statesService"
wsdl="http://www.rightactionscript.com/states/webservice/StatesService.php?wsdl">
<mx:operation name="getCountries" />
<mx:operation name="getStates" />
</mx:WebService>
<mx:VBox>
<mx:ComboBox id="country"
dataProvider="{statesService.getCountries.lastResult}" change="changeHandler(event)" />
<mx:ComboBox dataProvider="{statesService.getStates.lastResult}" />
</mx:VBox>
</mx:Application>

5.WebService方法2

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" initialize="initializeHandler(event)">
<mx:Script>
<![CDATA[
private function initializeHandler(event:Event):void {
statesService.getCountries.send( );
}
private function changeHandler(event:Event):void {
statesService.getStates.send( );
}
]]>
</mx:Script>
<mx:WebService id="statesService" wsdl="http://www.rightactionscript.com/states/webservice/StatesService.php?wsdl">
<mx:operation name="getCountries" />
<mx:operation name="getStates">
<mx:request>
<country>{country.value}</country>
</mx:request>
</mx:operation>
</mx:WebService>
<mx:VBox>
<mx:ComboBox id="country"
dataProvider="{statesService.getCountries.lastResult}" change="changeHandler(event)" />
<mx:ComboBox dataProvider="{statesService.getStates.lastResult}" />
</mx:VBox>
</mx:Application>
分享到:
评论

相关推荐

    Flex与后台交互的几种方法详解

    根据提供的标题、描述、标签及部分内容,本文将详细介绍Flex与后台进行交互的三种主要方法:通过FlashVars传递参数、利用HttpService服务以及采用URLLoader组件。这些方法在Flex开发中非常常见,对于实现数据的前后...

    Flash flex与JS通信

    描述中提到的"flex与Js 通信 相互调用"是指在Flex应用中可以调用JavaScript函数,同时JavaScript也可以调用Flex应用内的方法。这是一个双向的交互过程。例如,你可能需要在Flex应用中获取用户在HTML表单中的输入,...

    Flex与Javascript相互调用例子(附源码)

    标题中的“Flex与JavaScript相互调用例子”是指在Adobe Flex应用程序中如何与JavaScript进行交互的实践示例。Flex是一种基于ActionScript和MXML的开源框架,用于构建富互联网应用程序(RIA)。JavaScript则是一种...

    JS方法flashvars

    在这里我们只需要使用的是粗体标识的SetVariable方法,JS通过调用此方法能够直接更改SWF中的变量值。首先我们需要定义插入的SWF的 ID,例如id为VskyDemo,那么我们可以通过下面的JS语句来完成SWF内部变量的设置: ...

    asp.net嵌如flash的几种方法

    下面,我们将详细探讨几种在ASP.NET中嵌入Flash的方法。 1. **HTML Object Tag**: 最常见的方式是通过HTML的`&lt;object&gt;`标签来插入Flash内容。你需要指定`classid`和`codebase`属性以引用Flash Player ActiveX控件...

    flex3 接受外部参数

    在Flex 3中,接受外部参数主要通过以下几种方式实现: 1. **URL变量**: 当Flex应用被嵌入在HTML页面中时,可以使用`swfobject`库来加载SWF文件,并在URL中附带参数。例如,你可以通过`&lt;param name="flashvars" ...

    html嵌入flex swf

    Flex 是一个用于构建富互联网应用程序(RIA)的框架,它基于 ActionScript 和 MXML,允许开发者创建交互性强、用户体验良好的动态网页应用。 在 HTML 中嵌入 Flex SWF 文件,通常使用的是 Adobe 提供的 `SWFObject`...

    flash_images_FlashVars.rar

    下面我们将深入探讨FlashVars的原理、使用方法及其在处理图片时的应用。 FlashVars是一种特殊的参数传递方式,它允许开发者在HTML中嵌入Flash对象时,向Flash影片传递参数。这些参数可以在Flash ActionScript中访问...

    FlashVars播放器源码

    1.支持FlashVars调用html代码中的参数; 2.支持Flv/Mp4格式视频文件播放;...15.可以与动易、织梦、帝国等各类CMS系统结合,实现与此类CMS系统后台的融合; 16.代码简洁明了,界面美观,适合各类网站使用;

    网页中嵌入swf文件的几种方法

    ### 网页中嵌入SWF文件的几种方法 #### 一、`object`与`embed`结合方式 此方法结合了`object`与`embed`两种标签的优势,是Macromedia一直推荐的一种方式。 **优点:** - 兼容性好,几乎可以在所有浏览器上运行。...

    flex可扩展,动态改变图标的小树

    在Flex 3.6开发环境中,我们经常遇到需要创建可扩展、动态调整样式的界面元素,其中“小树”组件就是一个常见的需求。标题中的“flex可扩展,动态改变图标的小树”指的就是利用Flex框架,设计一个能够动态更新其图标...

    js.rar_actionscript_flash js_js actionscript_js flash_js交互

    在实现JavaScript与ActionScript的交互时,主要有以下几种方法: 1. **ExternalInterface API**:这是Flash Player提供的一个接口,允许ActionScript调用JavaScript函数和接收JavaScript的回调。在ActionScript中,...

    flex3的cookbook书籍完整版dpf(包含目录)

    与操作系统剪贴板交互 23.12节.添加HTML内容 23.13节.在ActionScript和JavaScript之间跨脚本操作 23.14节.本地SQL数据库 23.15节.检测和监控网络连接 23.16节.检测用户是否在线 23.17节.创建系统托盘图标 第二十四章...

    flash+js+php 上传控件

    id: 控件标识 (与 js 交互时用以对应控件) url: 上传地址 jsobj: js 对象 (上传各阶段会调用 js 相应的方法 参考: events ) maxsize: 最大上传尺寸 (单位 Mbs, 默认: 20, 设置成 0 则不检测文件尺寸) name: 上传控件...

    asp.net_Flash

    要实现ASP.NET与Flash的交互,通常会使用以下几种方法: 1. **FlashVars**:这是一种通过HTML参数传递数据给Flash的方法。在HTML嵌入Flash对象时,可以添加FlashVars属性,将变量名和值用等号分隔,多个变量之间用&...

    asp flash的教程3

    【ASP与Flash交互技术概述】 ASP(Active Server Pages)是一种微软开发的服务器端脚本环境,用于生成动态网页。它允许开发者使用VBScript或JScript等脚本语言在服务器端处理数据并生成HTML,以此实现网页的交互性...

    php con flash

    实现PHP与Flash的交互通常有以下几种方式: 1. **FlashVars**: 这是最早的通信方式,通过在HTML中设置Flash对象的FlashVars属性,传递参数给Flash。例如,Flash可以根据这些参数加载不同的内容或设置初始状态。 2....

    workspace20100228.rar

    《ActionScript与JavaScript之间的数据交互》 在Web开发中,ActionScript和JavaScript是两种非常重要的脚本语言。ActionScript主要用于Adobe Flash和Flex应用程序,而JavaScript则广泛应用于网页动态效果和客户端...

    交互图象JPS代码

    根据给定的信息,“交互图象JPS代码”主要涉及网页图像的交互技术,具体来说是通过JavaScript和Flash技术实现的一种动态图像展示效果。下面将详细解释这段代码中的关键知识点。 ### 1. JavaScript与HTML结合使用 #...

    flah链接jspflah链接jspflah链接jsp

    标题中的“flah链接jsp”指的是在Web开发中将Flash技术与JavaServer Pages(JSP)结合使用,创建动态交互式网页的一种方法。Flash是一种广泛用于制作动画、多媒体内容和交互性应用程序的平台,而JSP是Java语言的一个...

Global site tag (gtag.js) - Google Analytics