flex datagrid checkbox选中项目
<?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选中项目的更多相关文章
- flex Datagrid checkbox
<?xml version="1.0" encoding="utf-8"?><!-- http://blog.flexexamples.com ...
- easyui datagrid checkbox选中事件
$('#grid_Order').datagrid({ onCheck: function(index, data) { //alert(data[0]); / ...
- js 获取checkbox选中项目
# //获取选中项 $('#submit').click(function () { var check_list = [] $("input[name='ck']:checked" ...
- wpf DataGrid CheckBox列全选
最近在wpf项目中遇到当DataGrid的header中的checkbox选中,让该列的checkbox全选问题,为了不让程序员写自己的一堆事件,现写了一个自己的自定义控件 在DataGrid的 &l ...
- easyui 》 radio取值,checkbox取值,select取值,radio选中,checkbox选中,select选中
获取一组radio被选中项的值var item = $('input[@name=items][@checked]').val();获取select被选中项的文本var item = $(" ...
- jQuery EasyUI DataGrid Checkbox 数据设定与取值
纯粹做个记录,以免日后忘记该怎么设定. 这一篇将会说明两种使用 jQuery EasyUI DataGrid 的 Checkbox 设定方式,以及在既有数据下将 checked 为 true 的该笔数 ...
- EasyUI datagrid checkbox数据设定与取值(转自http://blog.csdn.net/baronyang/article/dnetails/9323463,感谢分享,谢谢)
这一篇将会说明两种使用 jQuery EasyUI DataGrid 的 Checkbox 设定方式,以及在既有数据下将 checked 为 true 的该笔数据列的 Checkbox 设定为 Che ...
- jquery checkbox 选中 全选 插件
checkbox 选中 全选 在项目中经常用到,但是不同的程序员写出的东西各有差异,在此整合了jquery checkbox插件,用起来很方便,也总结了我们项目中通常会出现问题的地方,一行代码搞定. ...
- jquery radio取值,checkbox取值,select取值,radio选中,checkbox选中,select选中
jQuery获取Select选择的Text和Value: 语法解释: 1. $("#select_id").change(function(){//code...}); //为Se ...
随机推荐
- ZT pthread_detach
pthread_detach 创 建一个线程默认的状态是joinable, 如果一个线程结束运行但没有被join,则它的状态类似于进程中的Zombie Process,即还有一部分资源没有被回收(退出 ...
- 【RabbitMQ】3、工作队列模式(work模式)
上一篇博客的作为rabbitMQ的入门程序,也是简单队列模式,一个生产者,一个消费者,今天这篇博客介绍work模式,一个生产者,多个消费者,下面的例子模拟两个消费者的情况. 图示: 一 ...
- python文件读写模式 --- r,w,a,r+,w+,a+,rb,wb
要了解文件读写模式,需要了解几种模式的区别,以及对应指针 r : 读取文件,若文件不存在则会报错 w: 写入文件,若文件不存在则会先创建再写入,会覆盖原文件 a : 写入文件,若文件不存在则会先创建再 ...
- 用Web技术开发客户端(一)
http://www.cnblogs.com/lefan/archive/2012/12/27/2836400.html 范怀宇(@duguguiyu)分享了<豌豆荚2.0重构时遇到的坑> ...
- MFC窗体程序中添加调试控制台
在编写复杂程序的过程中,我们经常需要将一些信息输出到文件或者屏幕上.较控制台应用程序,MFC窗体程序要显得麻烦一些! 下面有2种方法来实现为MFC窗体程序添加调试控制台,方便程序员调试程序和了解当前程 ...
- 学习VCL之路(1)
在TObject类中,有一个Dispatch()方法和一个DefaultHandler()方法,它们都是与消息分发机制相关的. Dispatch()负责将特定的消息分发给合适的消息处理函数.首先它会在 ...
- ./redis-trib.rb 报错:/usr/local/rvm/gems/ruby-2.4.2/gems/redis-4.0.1/lib/redis/client.rb:119:in `call': ERR Slot 0 is already busy (Redis::CommandError)
错误提示是 slot插槽被占用了(这是 搭建集群前时,以前redis的旧数据和配置信息没有清理干净.) 解决方案是 用redis-cli 登录到每个节点执行 flushall 和 cluster ...
- Microsoft SQL Server2008安装教程
自己录制的视频,地址https://share.weiyun.com/5VITfph(微云分享,大小52MB,AVI格式) 视频中安装.net framework如果已经安装好了就不需要安装,也可自行 ...
- 怎么用Python写爬虫抓取网页数据
机器学习首先面临的一个问题就是准备数据,数据的来源大概有这么几种:公司积累数据,购买,交换,政府机构及企业公开的数据,通过爬虫从网上抓取.本篇介绍怎么写一个爬虫从网上抓取公开的数据. 很多语言都可以写 ...
- package-lock.json 作用
package.json里面定义的是版本范围(比如^1.0.0),具体跑npm install的时候安的什么版本,要解析后才能决定,这里面定义的依赖关系树,可以称之为逻辑树(logical tree) ...