flex与后台及页面间对象的传递

时间:2022-08-30 14:43:47

1、从flex中发送请求后,利用<s:RemoteObject/>启用回调方法,类似于jQuery的post函数:

<fx:Declarations>
        <s:RemoteObject id="myService" destination="myService" endpoint="{this.parentApplication.contextRoot}/messagebroker/amf" showBusyCursor="true">
            <s:method name="query" result="queryHandler(event)"/>
        </s:RemoteObject>
    </fx:Declarations>

2、从后台向flex中传递的是一个ArrayList<VD101>,在flex中对应ArrayCollection类型,因为返回的有很多内容如:errorMessage等,因此,我把它们封装在一个对象中叫做:QueryResponse,在QueryResponse中要与后台的QueryResponse相对应,并在前台绑定如下:

[Bindable]
[RemoteClass(alias="com.QueryResponse")]
public class QueryResponse
{

   public var listVD101:ArrayCollection;

}

3、在flex中接收时,就是利用event.result得到传出的值,类似于jQuery中post函数中的data.xxx。

var queryResponse:Object = event.result;

4、然后就可以得到listVD101这个集合,绑定到DataGrid中就可以了,结构如下:

<s:DataGrid>

  <s:columns>
                <s:ArrayList>

        <s:GridColumn/>

5、我要选中一行数据,并得到这行数据。就得添加监听器,头部:creationComplete="moduleCreationCompleteHandler(event)"(进入页面就初始化的方法)

在函数里面添加选中监听器如(myDataGrid为上面<s:DataGrid/>的id):

private function moduleCreationCompleteHandler(event:FlexEvent):void
            {
                this.myDataGrid.addEventListener(GridSelectionEvent.SELECTION_CHANGE,onSelected);
            }

private function onSelected(event:GridSelectionEvent):void
            {
                this.vd101 = DataGrid(event.target).selectedItem as VD101;
            }

6.之后就得到了vd101的数据。

7、向jsp/servlet中传递字段(传递对象有点麻烦用到了)

var urlRequest:URLRequest = null;
                    urlRequest = new URLRequest(this.parentApplication.contextRoot + "/myServlet?d10101=" + this.vd101.d10101 + "&d10102=" + this.v1101.d10102);
                    navigateToURL(urlRequest,"_blank");

8、向另一个flex页面传值(可以和jsp中子页面(弹出框)和父页面这种关系传值相比较),在子页面中可以直接用了

public function myFunction(event:MouseEvent):void
            {
                if(this.vD101 == null){
                    Alert.show("请选择要操作的行");
                    return;
                }else{
                    var window:detial = new detial();
                    window.vd101 = this.vD101;
                    PopUpManager.addPopUp(window,this);
                    var x:Number = (this.parentApplication.mdiCanvas.width - window.width) / 2;
                    var y:Number = (this.parentApplication.mdiCanvas.height - window.height) / 2;
                    window.move(x, y);
                }
            }

9、从后台传过来的ArrayList类型转换为flex的ArrayCollection类型,取出其中一个对象

vd301 = listVD301.getItemAt(0) as VD301;使用as强制转换(即,显示转变),

flex与后台及页面间对象的传递的更多相关文章

  1. Servlet页面间对象传递的方法

    Servlet页面间对象传递的方法 1.request 2.session 3.application 4.cookie 5.其它的

  2. jsp页面间对象传递方法

    严格的来说不能叫做JSP页面间的对象传递,实际应该是页面间对象共享的方法: 1. 通过servletcontext,也就是application对象了,但这种情况要求在同一个web应用下,      ...

  3. 使用postMesssage&lpar;&rpar;实现跨域iframe页面间的信息传递----转载

    由于web同源策略的限制,当页面使用跨域iframe链接时,主页面与子页面是无法交互的,这对页面间的信息传递造成了不小的麻烦,经过一系列的尝试,最后我发现有以下方法可以实现: 1. 子页面url传参 ...

  4. React Native移动开发实战-3-实现页面间的数据传递

    React Native使用props来实现页面间数据传递和通信.在React Native中,有两种方式可以存储和传递数据:props(属性)以及state(状态),其中: props通常是在父组件 ...

  5. Chrome插件&colon;浏览器后台与页面间通信

    content.js 与 background.js和popup.js 通信和 background.js与popup.js  这些通信都用 chrome.runtime.sendMessage 这个 ...

  6. angularjs不同页面间参数的传递

    1.在路由中定义要接收的参数 .state('userDetails', { url: '/userDetails?phone', //以?为标识接收参数 templateUrl: 'assets/v ...

  7. jsp与jsp页面间的值传递与接收

    1.使用<a>标签 传递值 <a href="index.jsp?name=增加数据">增加数据</a> ///////目标页面/////值// ...

  8. ASP&period;NET 页面间数据传递的方法

    在做WEB开发时,很多地方会涉及到页面间的数据传递.这几天在完善教务基础系统,遇到了这个问题,上网查了一些资料,现总结如下: 说到页面间数据传递,很多人都会想到通过像Session这样的全局变量,但是 ...

  9. Asp&period;net页面间传值方式汇总

    七种传值方式,分别是:URL传值,Session传值,Cookie传值,Server.Transfer传值,Application传值,利用某些控件的PostBackUrl属性和使用@Previous ...

随机推荐

  1. js②

    操作符 ECMA-262描述了一组用于操作数据值的操作符,包括算术操作符(如加号和减号).位操作符.关系操作符和相等操作符. 一元操作符 递增和递减操作符(++ --) 一元加和减操作符 对非数值应用 ...

  2. HDU1698Just a Hook&lpar;线段树 &plus; 区间修改 &plus; 求和)

    题目链接 分析:1-N区间内初始都是1,然后q个询问,每个询问修改区间[a,b]的值为2或3或者1,统计最后整个区间的和 本来想刷刷手速,结果还是写了一个小时,第一个超时,因为输出的时候去每个区间查找 ...

  3. Samba服务器搭建配置

    本次环境: 服务端-centos6.8-192.168.2.200 客户端1-centos6.8-192.168.2.201 客户端2-Windows7-192.168.2.104 假设条件如下: 使 ...

  4. 调试mvc 源码【转:http&colon;&sol;&sol;www&period;cnblogs&period;com&sol;wucj&sol;archive&sol;2013&sol;06&sol;09&sol;3128698&period;html】

    最近在研究asp.net mvc的源码,于是在想,既然提供了源码,那我们如何进入源码调试了?在网上找了一些调试的方法,试了几个都不行,于是折腾了一上午,终于弄出来了,下面看看我的操作步骤.   一:准 ...

  5. 关于GCC的理解——On the understanding of the GCC

    GCC 有超过100个的编译选项可用. 这些选项中的许多你可能永远都不会用到, 但一些主要的选项将会频繁用到. 很多的 GCC 选项包括一个以上的字符. 因此你必须为每个选项指定各自的连字符, 并且就 ...

  6. 『Python』Python 调用 ZoomEye API 批量获取目标网站IP

    #### 20160712 更新 原API的访问方式是以 HTTP 的方式访问的,根据官网最新文档,现在已经修改成 HTTPS 方式,测试可以正常使用API了. 0x 00 前言 ZoomEye 的 ...

  7. Python的tkinter和tkinter&period;messagebox应用-鼠标和键盘命令绑定

    __author__ = 'Administrator' from tkinter import * import tkinter.messagebox class MainWindow: def b ...

  8. Python基础:条件判断与循环的两个要点

    一.条件判断: Python中,条件判断用if语句实现,多个条件判断时用if...elif实现:看下面一段程序 #python 3.3.5 #test if...elif age = 20 if ag ...

  9. 微信小程序(七)文章详情页面动态显示

    文章详情页面动态显示(即点击某个文章就跳转到相应文章的详情页): 思路:在文章列表页面添加catchtop事件,在js文件中获取文章的index,并用wx.navigateTo中的 url拼接详情页的 ...

  10. python 那些我记不清的函数

    eval 函数:用来计算在字符串中的有效Python表达式,并返回一个对象......将字符串变回数据类型 enumerate函数:加上序号 isinstance函数:判断数据类型 isinstanc ...