Código :
<s:HGroup y="53.65" width="457" height="23" left="300"> <s:Label text="Seleccione Filtro:" fontSize="15" fontWeight="bold"/> <s:DropDownList width="90" id="ddFiltro"> <mx:ArrayCollection> <fx:String>numContrato</fx:String> <fx:String>rut</fx:String> <fx:String>nombre</fx:String> <fx:String>direccion</fx:String> <fx:String>sector</fx:String> <fx:String>ciudad</fx:String> </mx:ArrayCollection> </s:DropDownList> <s:TextInput width="230" id="txtFiltro" change="filtrar(event)"/> </s:HGroup>
Código ActionScript :
private function filtrar(ev:Event):void{ gridClientes.dataProvider.filterFunction = filtro; gridClientes.dataProvider.refresh(); } private function filtro(item:Object):Boolean{ if(ddFiltro.labelDisplay.text == "numContrato"){ return item.numContrato.toString().substr(0, txtFiltro.text.length).toLowerCase() == txtFiltro.text.toLowerCase(); } else if(ddFiltro.labelDisplay.text == "rut"){ return item.rut.toString().substr(0, txtFiltro.text.length).toLowerCase() == txtFiltro.text.toLowerCase(); } else if(ddFiltro.labelDisplay.text == "nombre"){ return item.nombre.toString().substr(0, txtFiltro.text.length).toLowerCase() == txtFiltro.text.toLowerCase(); } else if(ddFiltro.labelDisplay.text == "direccion"){ return item.direccion.toString().substr(0, txtFiltro.text.length).toLowerCase() == txtFiltro.text.toLowerCase(); } else if(ddFiltro.labelDisplay.text == "sector"){ return item.sector.toString().substr(0, txtFiltro.text.length).toLowerCase() == txtFiltro.text.toLowerCase(); } else if(ddFiltro.labelDisplay.text == "ciudad"){ return item.ciudad.toString().substr(0, txtFiltro.text.length).toLowerCase() == txtFiltro.text.toLowerCase(); } else{ Alert.show("Seleccione Filtro","Mensaje de Sistema", Alert.OK, this); return 0; } }