<?xml version="1.0" encoding="utf-8"?> 
<mx:Application xmlns:fx="http://ns.adobe.com/mxml/2009"  
   xmlns:s="library://ns.adobe.com/flex/spark"  
   xmlns:mx="library://ns.adobe.com/flex/mx"> 
 
 <fx:Script> 
  <![CDATA[
   import mx.collections.ArrayCollection;
   import mx.controls.Alert;
   
   //数据源
   [Bindable]
   private var dsObjects:ArrayCollection = new ArrayCollection([
    {flag:false,name:"Chen",job:"developer"},
    {flag:false,name:"men",job:"mentor"},
   ]);
   
   /*
   *实现所有项目的全选中过程 
   */
   public function all_click(event:Event):void{
    
    dsObjects = this.dgDistbRecordSearchList.dataProvider as ArrayCollection;
    this.unAll.selected = false;
    for(var i:int = 0 ;i<dsObjects.length;i++){
     dsObjects[i].flag = CheckBox(event.target).selected;
    }
    //重新绑定
    this.dgDistbRecordSearchList.dataProvider = dsObjects;
   }
   /*
   *实现项目反相选中
   */
   public function unAll_click(event:Event):void{
    
    if(CheckBox(event.target).selected){
     
     this.all.selected = false;
     
     dsObjects = this.dgDistbRecordSearchList.dataProvider as ArrayCollection;
     
     for(var i:int = 0 ;i<dsObjects.length;i++){
      dsObjects[i].flag = !dsObjects[i].flag;
     }
     //重新绑定
     this.dgDistbRecordSearchList.dataProvider = dsObjects;
    }
   }
   
   //显示被选中项目的名称
   private function showSelectedName():void{
    var ac:ArrayCollection = this.dgDistbRecordSearchList.dataProvider as ArrayCollection;
    var selectedNames:String = "选中项目名称为:"
    
    for(var i:int = 0;i<ac.length;i++){
     if(ac[i].flag == true){
      selectedNames += ac[i].name + " ";
     }
    }
    
    Alert.show(selectedNames);
   }
  ]]> 
 </fx:Script> 
 <mx:VBox> 
  <mx:DataGrid id="dgDistbRecordSearchList" width="100%" height="100%" allowMultipleSelection="true" dataProvider="{dsObjects}" >                
   <mx:columns> 
    <mx:DataGridColumn headerText="选择" width="42" > 
     <mx:itemRenderer > 
      <fx:Component > 
       <mx:HBox horizontalAlign="center"> 
        <mx:CheckBox selected="@{data.flag}"  change="checkbox1_changeHandler(event,data)" width="13"> 
         <fx:Script> 
          <![CDATA[
           import mx.events.ListEvent;
           protected function checkbox1_changeHandler(event:Event,obj:Object):void
           {
            //调整按钮选择性
            outerDocument.unAll.selected = false;
            outerDocument.all.selected = false;
            //在单向绑定时可采用此法将选中信息反应到数据源
            /*  obj.flag =  CheckBox(event.target).selected;  */
           }
          ]]> 
         </fx:Script> 
        </mx:CheckBox> 
       </mx:HBox> 
       
      </fx:Component> 
     </mx:itemRenderer> 
    </mx:DataGridColumn> 
    <mx:DataGridColumn id="nam" textAlign="left" headerText="姓名" dataField="name"/> 
    <mx:DataGridColumn id="job" textAlign="left" headerText="职位" width="80" dataField="job"/> 
   </mx:columns> 
  </mx:DataGrid> 
  <mx:HBox> 
   <s:CheckBox id="all" label="全选" width="45" height="30" click="all_click(event)"/> 
   <s:CheckBox id="unAll" label="反选" width="45" height="30" click="unAll_click(event)"/> 
  </mx:HBox> 
  <mx:Button label="选中项目的名称" click="showSelectedName()" /> 
  
 </mx:VBox> 
 
</mx:Application>

flex datagrid checkbox选中项目的更多相关文章

  1. flex Datagrid checkbox

    <?xml version="1.0" encoding="utf-8"?><!-- http://blog.flexexamples.com ...

  2. easyui datagrid checkbox选中事件

    $('#grid_Order').datagrid({       onCheck: function(index, data) { //alert(data[0]);               / ...

  3. js 获取checkbox选中项目

    # //获取选中项 $('#submit').click(function () { var check_list = [] $("input[name='ck']:checked" ...

  4. wpf DataGrid CheckBox列全选

    最近在wpf项目中遇到当DataGrid的header中的checkbox选中,让该列的checkbox全选问题,为了不让程序员写自己的一堆事件,现写了一个自己的自定义控件 在DataGrid的 &l ...

  5. easyui 》 radio取值,checkbox取值,select取值,radio选中,checkbox选中,select选中

    获取一组radio被选中项的值var item = $('input[@name=items][@checked]').val();获取select被选中项的文本var item = $(" ...

  6. jQuery EasyUI DataGrid Checkbox 数据设定与取值

    纯粹做个记录,以免日后忘记该怎么设定. 这一篇将会说明两种使用 jQuery EasyUI DataGrid 的 Checkbox 设定方式,以及在既有数据下将 checked 为 true 的该笔数 ...

  7. EasyUI datagrid checkbox数据设定与取值(转自http://blog.csdn.net/baronyang/article/dnetails/9323463,感谢分享,谢谢)

    这一篇将会说明两种使用 jQuery EasyUI DataGrid 的 Checkbox 设定方式,以及在既有数据下将 checked 为 true 的该笔数据列的 Checkbox 设定为 Che ...

  8. jquery checkbox 选中 全选 插件

    checkbox  选中 全选 在项目中经常用到,但是不同的程序员写出的东西各有差异,在此整合了jquery checkbox插件,用起来很方便,也总结了我们项目中通常会出现问题的地方,一行代码搞定. ...

  9. jquery radio取值,checkbox取值,select取值,radio选中,checkbox选中,select选中

    jQuery获取Select选择的Text和Value: 语法解释: 1. $("#select_id").change(function(){//code...}); //为Se ...

随机推荐

  1. CopyrightHelper—开源VS插件辅助插入版权注释

    前言 有很多时候,我们在写代码的时候需要在代码文件头加上描述和版权信息等,如果使用代码项目模板又得为每种文件定模板,而已不方便,如果从某个地方复制过来,又嫌麻烦... 为了能解决这种懒人的需求,我开始 ...

  2. 提升PHP速度

    PHP的优点之一是速度很快,对于一般的网站应用,可以说是已经足够了.不过如果站点的访问量很高.带宽窄或者其它的因素令服务器产生性能瓶颈的时候,你可能得想想其它的办法来进一步提高PHP的速度了.这篇文章 ...

  3. codeforces 633E Startup Funding(浮点数处理)

    codeforces 633E Startup Funding 题意 枚举左端点,对于每个左端点求一个最大的右端点使得最大. 对于得到的这个数组,随机选择k个数,求最小值期望. 题解 对于每个左端点, ...

  4. fzu_oop_east 第二次作业

    这次有四题: 题目1:(这题本身没难度,就是听说格式比较坑,好像) 代码: #include<iostream> #include<cstdio> using namespac ...

  5. 使用SN.exe对.Net生成的程序集进行签名

    CLR用数字签名的方式防止程序集发布后被人篡改,也可以确定发布人,这个方法就是使用公/私钥对,然后对程序集所有模块取一个哈希生成一个数字签名放在程序集的元数据中. 1.创建公/私钥对     创建公/ ...

  6. 本机未装Oracle数据库时Navicat for Oracle 报错:Cannot create oci environment 原因分析及解决方案

    因为要更新数据库加个表,远程桌面又无法连接...所以就远程到另外一台电脑,然后用navicat通过内网修改目标数据库. 一直用着navicat操作数据库,所以很速度的弄好然后新建连接进入数据库. 然而 ...

  7. Kafka TimeoutException: Batch Expired 问题排查

    当前系统中produer配置request.timeout.ms=30000(30秒),但是broker端配置zookeeper.connection.timeout.ms=1000000,kafka ...

  8. PHP扩展功能 ---- 页面静态化(OB缓冲)

    一.入门三部曲 1.什么是页面静态化 百度百科介绍: 静态页面是网页的代码都在页面中,不需要执行asp,php,jsp,.net等程序生成客户端网页代码的网页,静态页面网址中一般不含"?&q ...

  9. angularjs ng-if ng-show ng-hide区别

    在使用anularjs开发前端页面时,常常使用ng-show.ng-hide.ng-if功能来控制页面元素的显示或隐藏,那他们之间有什么不同呢? 实现原理方面:ng-show/ng-hide是通过修改 ...

  10. Mysql查询正在运行的事务

    查询 正在执行的事务:SELECT * FROM information_schema.INNODB_TRX 根据这个事务的线程ID(trx_mysql_thread_id): 可以使用mysql命令 ...