`

Flex中使用filter过滤数据

阅读更多


  1.  <?
    xml version="1.0" encoding="utf-8"?>  
  2. <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"  creationComplete="init()" layout="absolute" fontSize="12" backgroundGradientAlphas="[1.0, 1.0]" backgroundGradientColors="[#FCFCFC, #FCFCFC]">  
  3.  <mx:Script>  
  4.   <![CDATA[ 
  5.   import mx.collections.ArrayCollection; 
  6.   import mx.events.CloseEvent; 
  7.   public var temp:String=""; 
  8.   [Bindable]private var filteredArr:Array; 
  9.      [Bindable]private var plistArr:Array; 
  10.      [Bindable]   
  11.         public var users:Array =[{id:1,username:"aaa", dept:"开发部"},    
  12.                         {id:2,username:"bbb", dept:"产品部"},    
  13.                      {id:3,username:"ccc", dept:"开发部"},                       
  14.                  {id:4,username:"ddd", dept:"产品部"}]; 
  15.        
  16.       private function init():void{ 
  17.         filteredArr = users.filter(removedDuplicates);  
  18.       } 
  19.       private var keys:Object = {};  
  20.       private function removedDuplicates(item:Object, idx:uint, arr:Array):Boolean {  
  21.                 if (keys.hasOwnProperty(item.dept)) {  
  22.                     return false;  
  23.                 } else {  
  24.                     keys[item.dept] = item;  
  25.                     return true;  
  26.                 }  
  27.             }  
  28.     
  29.       private function closeHandler(event:Event):void { 
  30.                 temp=String(ComboBox(event.target).selectedItem.dept); 
  31.                plistArr=users.filter(conditionFunction); 
  32.             } 
  33.  
  34.       private function conditionFunction(item:Object, idx:uint, arr:Array):Boolean {  
  35.                 if (item.dept==temp){ 
  36.                     return true ;   
  37.                 }else{ 
  38.                  return false; 
  39.                 } 
  40.                
  41.             }         
  42.   ]]>  
  43.  </mx:Script>  
  44.   <mx:Form width="293" height="152"  horizontalCenter="0" verticalCenter="0" borderStyle="solid">  
  45.     <mx:FormItem label="部门:" width="250">  
  46.        <mx:ComboBox   close="closeHandler(event);"  labelField="dept" dataProvider="{filteredArr}"  width="100%"></mx:ComboBox>  
  47.     </mx:FormItem>  
  48.     <mx:FormItem width="250">  
  49.        <mx:Repeater id="checkBoxRepeater" dataProvider="{plistArr}">   
  50.     <mx:CheckBox id="checkBox" label="{checkBoxRepeater.currentItem.username}"/>   
  51.    </mx:Repeater>   
  52.   
  53.     </mx:FormItem>  
  54.    
  55.  </mx:Form>  
  56. </mx:Application>  
  • 大小: 21.9 KB
分享到:
评论

相关推荐

    Flex文本框数据过滤

    在Flex开发中,文本框数据过滤是一个常见的需求,主要用于提高用户界面的交互性和用户体验。当用户在文本框中输入字符时,系统会实时地根据输入的字符筛选并显示相关数据,这种功能通常应用于搜索框或者下拉选择列表...

    Flex过滤DataGrid显示的数据

    此外,Flex还提供了高级过滤功能,如使用FilterCriteria类,可以创建复杂的过滤条件,包括多个条件的逻辑组合。这可以实现更复杂的过滤需求,比如同时满足多个条件的数据。 在实际项目中,为了提高用户体验,我们...

    Flex-DataGrid使用关键字过滤结果

    此外,为了提高性能,可以考虑使用缓存机制,只在用户输入新的关键词时才重新过滤数据,而不是每次按键都过滤。同时,过滤操作可能需要在UI线程之外执行,以避免阻塞界面更新。 在实际开发中,我们还需要考虑如何...

    Flex dataGrid实现数据过滤

    原理就是ArrayCollection的filterFunction的使用。是根据老外一个帖子改的,其他下载地址在 :http://www.zuidaima.com/share/1714555305004032.htm

    Flex实现DataGrid数据过滤

    DataGrid实现数据过滤。 输入关键字,对DataGrid中的数据进行筛选过滤

    Flex实现自动过滤ComboBox

    在Flex中,我们可以使用MX组件库中的ComboBox类或Spark组件库中的ComboBox类。为了实现自动过滤,我们需要监听TextInput的键盘事件,如change事件,然后根据输入的字符过滤List的数据源。 博客中提到的`...

    flex支持过滤的input

    在IT行业中,Flex是一种基于ActionScript和MXML的开源框架,用于构建富互联网应用程序(RIA)。这个场景中提到的“flex支持过滤的input”是指在Flex应用中的...这个功能对于提升用户在大量数据中的查找效率至关重要。

    Flex(mx:DataGrid)实现数据过滤显示

    为了实现用户输入时实时过滤,可以监听DataGrid的键盘事件或文本输入框的change事件,每当输入变化时,更新过滤条件并重新过滤数据。 ```actionscript textInput.addEventListener(Event.CHANGE, onFilterChange...

    Flex3 Explorer四合一本地版本之Flex2FilterExplorer

    Flex3 Explorer中的Flex2FilterExplorer允许用户浏览并应用预定义的过滤器,同时也支持自定义参数,以观察不同设置对过滤效果的影响。这包括AlphaFilter、BitmapFilter、BlurFilter、ColorMatrixFilter、...

    Flex分页技术

    在Flex中,可以通过监听DataGrid的`collectionChange`事件,或者使用FilterManager类来实现。在示例代码中没有直接展示过滤功能,但可以添加一个文本输入框,监听其`textChanged`事件,根据输入的条件过滤数据源。 ...

    flex分页控件的使用

    `PageChangeEvent`类还包含一个`Filter`方法,用于根据页码和每页大小从原始数据列表中过滤出当前页的数据。这个方法通过计算起始和结束索引来实现分页,并返回一个新的数组,只包含当前页的数据。 接下来,代码...

    Flex开发辅助工具

    Flex2FilterExplorer是一个过滤器和效果的演示工具。它展示了Flex 2中提供的各种视觉效果,如模糊、渐变、发光等,以及如何应用这些效果到组件上。开发者可以尝试不同的参数组合,观察它们如何改变组件的视觉表现,...

    blazeds message filter 过滤消息——在聊天室的应用

    Blazeds Message Filter是Adobe Flex和 BlazeDS框架中的一个重要组件,它允许开发人员对服务器到客户端或客户端到服务器的消息进行过滤和处理。BlazeDS是一个开源的服务器端技术,用于实时数据推送,使得Web应用程序...

    flex实现阴影效果

    在本文中,我们将深入探讨如何使用Flex技术来实现阴影效果。Flex是一种强大的开发框架,主要用于构建富互联网应用程序(RIA),特别是在Adobe AIR和Flash Player环境中。它提供了丰富的组件库、强大的数据绑定机制...

    Grid(3)[数据过虑]

    - `ICollectionView`接口:`Flex`中的数据提供者通常实现了这个接口,它定义了`filterFunction`属性和`filterCriteria`方法,用于设置和应用过滤器。 - `IFilterableCollectionView`接口:扩展了`ICollectionView`...

    spring-flex官方文档

    一旦Spring管理的服务被导出为远程服务,就可以在Flex客户端中使用这些服务了。具体步骤包括: - 在Flex客户端配置中添加远程服务的地址。 - 调用远程服务的方法。 #### 四、使用Spring Security保护BlazeDS目的地 ...

    flex与struts2整合

    Flex与Struts2的整合是Web开发中的常见实践,旨在构建富互联网应用程序(RIA)。Struts2作为MVC框架,提供了强大的控制层功能,而Flex则以其丰富的用户界面和强大的数据交互能力受到开发者青睐。本文将详细讲解Flex...

    ssh+flex配置

    `&lt;filter&gt;`和`&lt;filter-mapping&gt;`元素在`web.xml`中设置Struts2过滤器,确保所有请求都通过Struts2处理。 2. **Hibernate**:Hibernate是ORM(对象关系映射)框架,它允许开发者用面向对象的方式操作数据库。`...

    flex fliter

    该组件通过监听文本框的输入变化来实时过滤数据,并通过重写下拉箭头按钮的点击事件来展示所有数据项。此组件不仅提高了用户体验,还展示了Flex开发中自定义组件的强大能力。对于想要进一步了解Flex框架并进行自定义...

Global site tag (gtag.js) - Google Analytics