<?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. zbrush书法文字硬边雕刻

    方法的重点在与边缘环的操作以及模型网格的数量. 1.通过ZAppLink功能可以把制作的文字书法映射到模型上去. 2.遮罩,按照颜色强度遮罩. 3.分组,按照颜色分组.单独显示文字部分的分组.按Ctr ...

  2. Spring Boot 的配置文件

    Profile 配置 Profile 是 Spring 用来针对不同的环境对不同的配置提供支持的,全局的 Profile 配置使用 application-{profile}.properties ( ...

  3. Java.lang 包 (包装类、String类、Math类、Class类、Object类)

    Java 的核心 API(Application Programming Interface)是非常庞大的,这给开发者带来了很大的方便. java.lang 包是 Java 的核心类库,它包含了运行 ...

  4. 本地缓存和redis

    项目中的传统架构在服务启动时 读取数据库的大部分数据到本地内存,在看到redis的作用时发出疑问,到底有什么样的区别以及怎么选择呢,下面是别人的回答 使用本地缓存快还是使用redis缓存好? Redi ...

  5. BZOJ 1295 最长距离 BFS+枚举

    题目链接: https://www.lydsy.com/JudgeOnline/problem.php?id=1295 题目大意: windy有一块矩形土地,被分为 N*M 块 1*1 的小格子. 有 ...

  6. size和len

    size函数只能用于计算array,不能用于计算list,返回的是数组的元素个数 len函数既可以计算array,也可以计算list >>> a = np.array([1,2]) ...

  7. CUDA 纹理的使用

    纹理绑定有两种,一个是绑定到线性内存就是用cudaMalloc();cudaMemcpy();开辟的内存空间,另一种是绑定到cudaMallocArray, cudaMemcpyToArray开辟到的 ...

  8. 安装Centos 7 错误解决

    dracut-initqueue[624]:Warning: Could not boot. dracut-initqueue[624]:Warning: /dev/root does not exi ...

  9. Linux中使用iptables开放特定端口

    禁止其他主机对该特定主机进行访问和远程连接控制,所以只开放特定端口 只控制INPUT链就可达到控制其他主机对该主机的访问. 1.首先关闭INPUT链 iptables -P INPUT DROP 使用 ...

  10. MRC 和 ARC 混编

    在targets的build phases选项下Compile Sources下选择要不使用arc编译的文件,双击它,输入 -fno-objc-arc 即可   MRC工程中也可以使用ARC的类.方法 ...