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()实现跨域iframe页面间的信息传递----转载

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

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

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

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

    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.NET 页面间数据传递的方法

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

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

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

随机推荐

  1. C++编程练习(9)----“图的存储结构以及图的遍历“(邻接矩阵、深度优先遍历、广度优先遍历)

    图的存储结构 1)邻接矩阵 用两个数组来表示图,一个一维数组存储图中顶点信息,一个二维数组(邻接矩阵)存储图中边或弧的信息. 2)邻接表 3)十字链表 4)邻接多重表 5)边集数组 本文只用代码实现用 ...

  2. oracle数据库在mybatis中使用uuid

    <insert id="insert" parameterType="com.xxx.SystemDepartment">     <sele ...

  3. swift2.0 字符串,数组,字典学习代码

    swift 2.0 改变了一些地方,让swift变得更加完善,这里是一些最基本的初学者的代码,里面涉及到swift学习的最基本的字符串,数组,字典和相关的操作.好了直接看代码吧. class View ...

  4. Oracle数据库语言修改成UTF-8

    select * from v$nls_parameters; sqlplus "/ as sysdba" SQL> SHUTDOWN IMMEDIATE SQL> S ...

  5. PHPCMS 概念初学

    CMS是一个内容管理系统,主要是用来做企业站,也就是说我们在网上见到绝大部分的企业站都是用这个做的,有极少数的是用源生代码写的 如何安装? 1.从网站搜索下载安装包并解压 2.点击文件夹后显示一下两个 ...

  6. phpcms如何做企业站--> 替换首页最初操作

    首先用一个静态首页的模板,通过cms进行替换做成一个有后台的 首页的替换流程首先要先把静态网页做出来,拿这个页面去替换 页面所有的文件都在这,做静态页面的文件 现在要做的是把这些文件复制一下拿到php ...

  7. 读书笔记 effective c++ Item 16 成对使用new和delete时要用相同的形式

    1. 一个错误释放内存的例子 下面的场景会有什么错? std::]; ... delete stringArray 一切看上去都是有序的.new匹配了一个delete.但有一些地方确实是错了.程序的行 ...

  8. Kettle 4.4.2源码分析

    一.获取并编译源码 1.1.获取源码 SVN:svn://source.pentaho.org/svnkettleroot/archive/Kettle/branches GitHub:https:/ ...

  9. 每天一个Linux命令(23)--linux 目录结构(一)

    对于每一个Linux 学习者来说,了解 Linux 文件系统的目录结构,是学好Linux 的至关重要的一步,深入了解Linux 文件目录结构的标准和每个目录的详细功能,对于我们用好Linux 系统至关 ...

  10. mfc---单文档工程添加消息响应

    写消息映射:.h中些函数头文件afx_mag … .cpp中写函数体 .cpp中写消息映射 给toolbar添加消息: .h中添加头文件afx_msg …. .cpp中添加函数体,消息映射ON_COM ...