zoukankan      html  css  js  c++  java
  • Flex 使用ArrayCollection的FilterFunction进行数据过滤

    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" 
        layout
    ="absolute" fontFamily="simsun" fontSize="12"
         creationComplete
    ="hs.send()">
        
    <mx:Script>
            
    <![CDATA[
                import mx.collections.ArrayCollection;
                import mx.rpc.events.*;
                import mx.controls.Alert;
                
                private function hsFault(event:FaultEvent):void{
                    Alert.show(event.message.toString(),"Error");
                }
                private function hsResult(event:ResultEvent):void{
                    
                    mydata = event.result.NewDataSet.Table as ArrayCollection;
                    mydata.filterFunction = NameFilterChanged;
                    mydata.refresh();
                }
                public function NameFilterChanged(item:Object):Boolean{
                    var name:String = item.姓名;
                    var sno:String = item.学号;
                    var sex:String = item.性别;
                    if(cmbSex.selectedItem.data != "全部")
                        return (sno.indexOf(txtSNO.text,0) >= 0) &&(name.indexOf(txtName.text,0) >= 0) && (cmbSex.selectedItem.data == sex);
                    else
                        return (sno.indexOf(txtSNO.text,0) >= 0) &&(name.indexOf(txtName.text,0) >= 0);
                }
                
                [Bindable]
                private    var mydata:ArrayCollection;

                
            
    ]]>
        
    </mx:Script>
        
    <mx:HTTPService id="hs" useProxy="false" url="绿色通道名单.xml" fault="hsFault(event)"
         showBusyCursor
    ="true" result="hsResult(event)"/>
        
    <mx:DataGrid dataProvider="{mydata}" right="10" left="9" top="38" bottom="20" >
            
    <mx:columns>
                
    <mx:DataGridColumn headerText="姓名" dataField="姓名"/>
                
    <mx:DataGridColumn headerText="性别" dataField="性别"/>
                
    <mx:DataGridColumn headerText="学号" dataField="学号"/>
                
    <mx:DataGridColumn headerText="准考证号" dataField="准考证号"/>
                
    <mx:DataGridColumn headerText="生源地" dataField="生源地"/>
                
    <mx:DataGridColumn headerText="身份" dataField="身份"/>
                
    <mx:DataGridColumn headerText="户口" dataField="户口"/>
                
    <mx:DataGridColumn headerText="部门" dataField="部门"/>
                
    <mx:DataGridColumn headerText="原因" dataField="原因"/>
                
    <mx:DataGridColumn headerText="财务处是否办理" dataField="财务处是否办理"/>
            
    </mx:columns>
        
    </mx:DataGrid>
        
    <mx:Label x="186" y="12" text="姓名:"/>
        
    <mx:TextInput id="txtName" x="229" y="10" change="{mydata.refresh()}" width="95"/>
        
    <mx:ComboBox x="391" y="10" width="94" id="cmbSex" labelField="title" change="mydata.refresh()"> 
            
    <mx:dataProvider>
                
    <mx:Array>
                    
    <mx:Object title = "全部" data="全部"/>
                    
    <mx:Object title = "男" data="男"/>
                    
    <mx:Object title = "女" data="女"/>
                
    </mx:Array>
            
    </mx:dataProvider>
        
    </mx:ComboBox>
        
    <mx:Label x="348" y="12" text="性别:"/>
        
    <mx:TextInput x="76" y="10" width="102" id="txtSNO" change="{mydata.refresh()}"/>
        
    <mx:Label x="33" y="12" text="学号:"/>
    </mx:Application>

  • 相关阅读:
    Erucy的SharePoint WebPart管理工具 软件之美,美在缺陷
    乌托邦式的经理人日记——小的奖励激发员工热情 软件之美,美在缺陷
    一个项目经理的一些个人体会 转自CSDN 软件之美,美在缺陷
    人上人,肉中肉 软件之美,美在缺陷
    创建门户网站被中断了怎么办? 软件之美,美在缺陷
    高度定制的WSS网站DCC文档管理系统 软件之美,美在缺陷
    看Blog有感 软件之美,美在缺陷
    对WSS Object Model的封装类SPSHelper 软件之美,美在缺陷
    提升基于Windows SharePoint Service对象库开发的asp.net应用程序效率手记. 软件之美,美在缺陷
    1105pytorch实践
  • 原文地址:https://www.cnblogs.com/mobile/p/507700.html
Copyright © 2011-2022 走看看