前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Flex 使用ArrayCollection的FilterFunction进行数据过滤

Flex 使用ArrayCollection的FilterFunction进行数据过滤

作者头像
用户3135539
发布2018-09-12 11:45:42
8310
发布2018-09-12 11:45:42
举报
文章被收录于专栏:
代码语言:javascript
复制
<?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>
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2006-09-18 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档