Hola
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!!