`
nianshi
  • 浏览: 420673 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

Flex使用Repeater创建checkbox组

    博客分类:
  • Flex
阅读更多
使用Repeater创建checkbox组并默认选中给出选中的结果


<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
        layout="vertical"
        verticalAlign="middle"
        backgroundColor="white" creationComplete="init()">

    <mx:Style>
        Alert {
            backgroundAlpha: 0.8;
            backgroundColor: black;
            borderAlpha: 0.8;
           borderColor: black;
        }
    </mx:Style>

    <mx:Script>
        <![CDATA[
            import mx.controls.Alert;
            import mx.controls.RadioButton;
            import mx.collections.ArrayCollection;
      //定义  Repeater要绑定的数据即用来添加checkbox  模拟所有的操作
      private var roleFields:ArrayCollection = new ArrayCollection([{name:"编号",field:"id",link:"false"}
                                       ,{name:"角色名",field:"roleName",link:"true"}
                                      ,{name:"操作",field:"删除角色",link:"false"}]);
      //默认选择的checkbox的集合  模拟用户有的操作
      private var role:ArrayCollection = new ArrayCollection([{name:"编号",field:"id",link:"false"}
                                          ,{name:"操作",field:"删除角色",link:"false"}]);
    //全选操作
     private function selectAll(event:Event):void {
    var target:CheckBox = event.currentTarget as CheckBox;
    var i:uint;
    if(target.selected){
    
     for(i=0;i<roleFields.length;i++) {
     checkBox[i].selected=true;
     }
    }else {
     for(i=0;i<roleFields.length;i++) {
      checkBox[i].selected=false;
     }
    }
   }
   private function init():void {
         if(role != null && roleFields != null) {
          //当前角色所拥有的操作的循环
       for(var i:uint=0;i<role.length;i++){
        //所有的操作的循环
        for(var j:uint=0;j<roleFields.length;j++){
         //如果checkbox的data是当前角色拥有的操作的id则check选中
         if(role[i].field == checkBox[j].data){
          checkBox[j].selected=true;
         }
        }
       }
         }
        }
        //选择的内容
        private function selectedContext():void {
         var context:String = "";
         if(roleFields != null ) {
          for(var i:uint=0;i<roleFields.length;i++) {
           //如果checkbox被选中把选中的内容记录下来
           if(checkBox[i].selected) {
            context = context+","+checkBox[i].data;
           }
          }
         }
         Alert.show(context);
        }
        ]]>
    </mx:Script>

    <mx:Array id="arr">
        <mx:Object label="Red" data="red" />
        <mx:Object label="Orange" data="haloOrange" />
        <mx:Object label="Yellow" data="yellow" />
        <mx:Object label="Green" data="haloGreen" />
        <mx:Object label="Blue" data="haloBlue" />
    </mx:Array>

  <mx:Panel id="panel" width="50%" paddingLeft="10" verticalGap="10">
       <mx:Repeater id="checkBoxRepeater" dataProvider="{roleFields}">
            <mx:CheckBox id="checkBox"
                    label="{checkBoxRepeater.currentItem.name}"
                   data="{checkBoxRepeater.currentItem.field}"
                   />
        </mx:Repeater>
        <mx:ControlBar horizontalAlign="right">
            <mx:CheckBox label="全选" click="selectAll(event)" selected="false"/>
            <mx:Button id="button" label="Click me"  click="selectedContext()"/>
        </mx:ControlBar>
    </mx:Panel>

</mx:Application>
分享到:
评论

相关推荐

    flex中批量生成checkbox

    flex中checkbox的数量可以根据分割字符串来控制,最重要的就是这个&lt;mx:Repeater&gt;标签了

    asp.net Repeater取得CheckBox选中的某行某个值的c#写法

    在本例中,我们将探讨如何在***使用Repeater控件结合CheckBox来获取选中行中特定控件的值。 首先,我们定义了一个关键点,即在每行中添加一个隐藏的TextBox控件。在Repeater控件中,每一行的数据通常通过...

    asp.net Repeater取得CheckBox选中的某行某个值

    通常,我们会在Repeater中使用CheckBox控件,让最终用户可以选择某些行中的数据。在本例中,知识点集中在如何通过Repeater控件中的CheckBox控件选中时获取该行内其他控件(例如TextBox)的值。 知识点可以展开如下...

    flex Repeater标签使用教程

    ### Flex Repeater标签使用教程 #### 一、引言 在Flex开发中,`Repeater`组件是一个非常实用的功能,它允许开发者根据动态或静态的数据数组,在运行时重复显示一个或多个用户界面组件。这对于创建动态且响应式界面...

    手把手教你怎么使用Repeater控件

    - 设置Repeater的ItemTemplate,根据需要创建HTML结构并使用数据绑定表达式绑定数据源字段。 - 如果需要,可以定义HeaderTemplate和FooterTemplate。 - 指定数据源,可以是SQL查询结果、数据集、列表或其他任何可...

    Repeater控件的使用

    本篇文章将深入探讨`Repeater`控件的使用,包括如何实现编辑、删除功能以及如何进行嵌套使用。 ## 一、Repeater控件的基本使用 `Repeater`控件不提供任何内置的布局或样式,而是通过模板(ItemTemplate、...

    repeater控件使用实例

    `Repeater`控件的数据源可以是任何实现了`IEnumerable`接口的对象,如数组、列表或数据库查询结果。数据绑定通常在`Page_Load`事件中进行,使用`DataSource`属性设置数据源,然后调用`DataBind()`方法。 ```csharp ...

    DataGrid中嵌套使用Repeater.doc

    本篇文章重点讨论如何在DataGrid内部嵌套使用Repeater控件,以展示分层次的数据。这种技术同样适用于其他列表绑定控件的组合,例如DataGrid包含DataGrid,或者DataList包含DataList等。 首先,我们要了解DataGrid的...

    【ASP.NET编程知识】asp.net使用Repeater控件中的全选进行批量操作实例.docx

    ASP.NET 编程知识 - 使用 Repeater 控件中的全选进行批量操作实例 本文将详细介绍 ASP.NET 中使用 Repeater 控件中的全选进行批量操作的方法。Repeater 控件是 ASP.NET 中的一种常用的控件,用于显示重复的数据项,...

    repeater的简单使用

    &lt;asp:Repeater ID="rptUser" runat="server" onitemcommand="rptUser_ItemCommand"&gt; &lt;tr&gt;&lt;td colspan="3" align="center"&gt;用户信息&lt;/td&gt;&lt;/tr&gt; 用户编号 用户姓名 用户密码 操作 ...

    服务器控件Repeater的使用

    下面我们将深入探讨Repeater控件的使用方法、功能以及应用场景。 1. **Repeater控件的结构** Repeater控件本身不提供任何内置的布局,它只是一个模板化的控件,允许开发者通过ItemTemplate来定义数据项的HTML结构...

    Repeater嵌套Repeater 动态数据绑定

    本资源主要探讨了如何使用`Repeater`控件进行嵌套,以及如何实现动态数据绑定,这对于构建主从表关系的数据展示非常有用。 首先,我们来看`Repeater`控件的基本概念。`Repeater`是一个无模板的控件,它允许开发者...

    后台动态创建Repeater并绑定数据

    ### 后台动态创建Repeater并绑定数据 在ASP.NET Web Forms中,Repeater控件是一种非常灵活且功能强大的控件,它允许开发者完全自定义布局,并能够方便地对数据进行迭代显示。本文将详细介绍如何在后台代码中动态...

    asp.net中Repeater控件嵌套Repeater调数据方法

    1. **创建外部Repeater控件**:首先定义一个外部的Repeater控件,它将负责加载顶层数据。 2. **定义内部Repeater控件**:在外部Repeater控件的模板中,定义一个内部的Repeater控件,用于展示与当前顶层数据项相关的...

    QML ComboBox 演示

    在Qt Quick(QML)框架中,ComboBox是一个用于创建下拉选择框的组件,它提供了用户可以在一组预定义选项中进行选择的界面元素。在QML编程中,ComboBox是实现简单用户交互的重要工具,适用于创建GUI应用时需要用户从...

    Repeater 显示5条数据

    在这个场景中,"Repeater 显示5条数据"是指使用Repeater控件来展示数据源中的前五条记录。 **Repeater控件基本使用** Repeater控件不提供内置的样式或分页功能,它的主要任务是遍历数据源并为每一项生成指定的模板...

    repeater动态首尾相接显示图片

    在本文中,我们将深入探讨如何使用ASP.NET中的Repeater控件来实现动态首尾相接显示图片的功能。Repeater是一个非常灵活的数据绑定控件,它允许我们根据数据源中的每一项自定义HTML输出。这种技术常用于创建列表、...

    远程桌面中转——VNC Repeater架设方案文档

    远程桌面中转是指在公网环境下,使用远程桌面客户端连接到远程桌面服务端的过程。这种连接通常需要经过服务器的中转,以便于客户端和服务端之间的通讯。目前,市面上有许多闭源的远程桌面中转解决方案,如 ...

Global site tag (gtag.js) - Google Analytics