Quiero mostrar una lista grande de personas letra por letra, osea primero solo los q empiezan con A, luego de apretar un boton solo los q empiezan por B y asi. Mi problema es q al intentar hacer esto no borra la los anteriores. Osea pirmero despliego los q empiezan con A y luego aprieto un boton par ir a los B y me muestra los A con los B juntos y no solo los B.
Mi código es el siguiente
Código :
var miXML:XML = new XML(); var datosProcesos:Array = new Array(); var alClicar:Object = new Object(); var selec_str:String = new String(); /***************************** EMPEZAMOS *********************************/ Hola="A"; //Cargamos el XML miXML.ignoreWhite = true; miXML.onLoad = function(success){ //Cargamos y llenamos el array if (success||objeto.target==insertar_btn){ for (i=0; i<miXML.firstChild.firstChild.childNodes.length; i++){ datosProcesos.addItem({Rut: miXML.firstChild.firstChild.childNodes[i].childNodes[0].firstChild, Apellido_Paterno: miXML.firstChild.firstChild.childNodes[i].childNodes[1].firstChild, //Utilizamos parseInt() para convertir los textos a número Apellido_Materno: miXML.firstChild.firstChild.childNodes[i].childNodes[2].firstChild, Nombres: miXML.firstChild.firstChild.childNodes[i].childNodes[3].firstChild}); } //Asignamos al DataSet y al DataGrid datos.items = datosProcesos; datos.filtered = false; procesos_grid.dataProvider = datos.dataProvider; //Propiedades del DataGrid procesos_grid.resizableColumns = false; procesos_grid.getColumnAt(0).width = 100; procesos_grid.getColumnAt(1).width = 170; procesos_grid.getColumnAt(2).width = 150; procesos_grid.getColumnAt(3).width = 200; procesos_grid.getColumnAt(0).setStyle("textAlign", "left"); procesos_grid.getColumnAt(1).setStyle("textAlign", "left"); procesos_grid.getColumnAt(2).setStyle("textAlign", "left"); procesos_grid.getColumnAt(3).setStyle("textAlign", "left"); //Deshabilitamos ordenación de las columnas, pero no las columnas for (i=0; i<3; i++){ procesos_grid.getColumnAt(i).sortOnHeaderRelease = false; } } } miXML.load("http://localhost/Philax/miphp2.php?letra="+Hola); /**************************** FUNCIONES *******************************/ alClicar.click = function(objeto){ Hola="B"; //Vaciamos todo y recargamos el DataGrid con los datos modificados (no funciona) procesos_grid.splice(0, procesos_grid.length); datos.clear(); datos.filtered = false; procesos_grid.dataProvider = datos.dataProvider; _root.miXML.load("http://localhost/Philax/miphp2.php?letra="+Hola); } /**************************** EVENTOS *******************************/ irB_btn.addEventListener("click", alClicar);
Yo creo q el problema es que "datos.clear();" no esta funcionando y no me borra lo anterior.
El Php que utilizo es el siguiente:
Código :
<documento> <?php require_once('Connections/Base_PhilaxMedE.php'); ?> <?php mysql_select_db($database_Base_PhilaxMedE, $Base_PhilaxMedE); $query_Recordset1 = "SELECT * FROM activenfermeria"; $Recordset1 = mysql_query($query_Recordset1, $Base_PhilaxMedE) or die(mysql_error()); $row_Recordset1 = mysql_fetch_assoc($Recordset1); $totalRows_Recordset1 = mysql_num_rows($Recordset1); $result = mysql_query("SELECT * FROM pacientes where LEFT(pac_ApellPat,1) ='".$_GET['letra']."'") or die ("Invalid query"); echo "<datos>"; while($row = mysql_fetch_array($result)) { echo "<pelicula> <nom>" . $row["pac_rut"] . "</nom> <dir>" . $row["pac_ApellPat"] . "</dir> <ano>" . $row["pac_ApellMat"] . "</ano> <dur>" . $row["pac_Nombres"]. "</dur> </pelicula>"; } echo "</datos>"; mysql_free_result($result); ?> </documento>
De antemano gracias!!