Ver Mensaje Individual
  #2 (permalink)  
Antiguo 14/04/2011, 13:24
Avatar de laratik
laratik
 
Fecha de Ingreso: mayo-2010
Ubicación: Cali
Mensajes: 317
Antigüedad: 14 años, 9 meses
Puntos: 63
Respuesta: Como buscar nombre aproximado con indexOf()

Lo que estas haciendo es buscando coincidencias dentro del array, por lo cual solo te dará la respuesta cuando encuentre el elemento que se llame igual al que le das, para lo que deseas hacer, debes recorrer cada elemento del array preguntando por coincidencias dentro del String. Prueba con esto:

Código Javascript:
Ver original
  1. <script language="javascript" type="text/javascript">
  2. // Carga de contactos
  3. var searchNombre = new Array();
  4. searchNombre[0] = "Daniel";
  5. searchNombre[1] = "Paula";
  6. searchNombre[2] = "Cristian";
  7. searchNombre[3] = "Jackson";
  8. searchNombre[4] = "David";
  9. // y un monton mas de arrays
  10. function busca() {
  11.     var s = document.getElementById("buscar").value;
  12.     var nombres = "";
  13.     if(s!="") {
  14.         for(var i=0; i<searchNombre.length; i++) {
  15.             if(searchNombre[i].indexOf(s)!=-1) {
  16.                 nombres += searchNombre[i]+"<br/>";
  17.             }
  18.         }
  19.         if(nombres != ""){
  20.                 document.getElementById('bfmore').innerHTML=nombres;
  21.             } else {
  22.                 document.getElementById('bfmore').innerHTML="\<p style='font-size:10pt;color:F00;'\>No se encuentra nadie\<\/p\>"
  23.             }
  24.     }
  25. }
  26. </script>
__________________
Programar apasiona y lo que apasiona es un arte, por lo tanto programar es un arte.

Quiero karma para en mi próxima vida ser un billonario bien dotado con alas.