Foros del Web » Programando para Internet » Javascript »

Marcar elemento de una lista

Estas en el tema de Marcar elemento de una lista en el foro de Javascript en Foros del Web. Hola gente necesito hacer los siguiente: Tengo un elemento select donde se cargan una serie de productos.Tambien tengo un imputbox donde se debe tipear el ...
  #1 (permalink)  
Antiguo 28/01/2003, 20:44
Avatar de Holden  
Fecha de Ingreso: enero-2002
Ubicación: Buenos Aires
Mensajes: 326
Antigüedad: 22 años, 3 meses
Puntos: 4
Marcar elemento de una lista

Hola gente necesito hacer los siguiente:
Tengo un elemento select donde se cargan una serie de productos.Tambien tengo un imputbox donde se debe tipear el nombre del producto que se desea. Lo que necesito hacer es que cada vez que se tipee en el imput box, se ponga seleccionado el elemento del select mas proximo a lo escrito en el imput.
Para ser mas grafico les dejo una foto de lo que quiero:



Espero que alguien me pueda ayudar un poco con esto.
Gracias como siempre.
__________________
Holden-@r
http://www.hvaldez.com.ar
  #2 (permalink)  
Antiguo 28/01/2003, 22:11
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 4 meses
Puntos: 38
Hola Holden.

Revisa el FAQ-60 que creo que te viene como anillo al dedo.

Saludos.
  #3 (permalink)  
Antiguo 28/01/2003, 22:46
Avatar de Holden  
Fecha de Ingreso: enero-2002
Ubicación: Buenos Aires
Mensajes: 326
Antigüedad: 22 años, 3 meses
Puntos: 4
Hola, ya estube viendo ese mensaje y de hecho intente hacer algunas modificaciones pero mi nivel de js es muy basico.
El problema es que al escribir en el imput desaparecen las opciones que no se ajsutan con lo ingresado. Mi idea es que solo se destaque la que mas se ajsute y no que solo se vea la que mas se ajusta. me explico?
en el ejemplo las demas opciones desaparecen de hecho si pones alguna palabra que no esta dentro del select se queda vacio. Me gustaria, en lo posible, que se vea tal cual la foto que anexe.
Si alguien contribuye con mi causa se agradece.
__________________
Holden-@r
http://www.hvaldez.com.ar
  #4 (permalink)  
Antiguo 28/01/2003, 22:48
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 4 meses
Puntos: 38
Ok.

Mañana te preparo un ejemplito si no es que alguien se adelanta.

Saludos.
  #5 (permalink)  
Antiguo 30/01/2003, 12:11
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 4 meses
Puntos: 38
Hola Holden.

Disculpa la tardanza, me había olvidado por completo del problema. He hecho el siguiente ejemplo, revísalo y dime si te resuelve o no.

Código PHP:
<html>
 <
head>
  <
script language="JavaScript">

   function 
evalua(sOpcsTxt){
    var 
nRes 0;
    for (var 
0sTxt.length && sOpc.length && sOpc.charAt(i) == sTxt.charAt(i); i++)
     
nRes++;
    return 
nRes;
   }

   function 
cambia(oCntrl){
    var 
txtVal document.frm.txt.value;
    var 
nAnt = -1;
    var 
nBest = -1;
    var 
nAct;

    for (var 
0nBest == -&& oCntrl.options.lengthi++){
     
nAct evalua(oCntrl.options[i].texttxtVal);
     if (
nAct nAntnBest 1;
     
nAnt nAct;
    }
    
oCntrl.selectedIndex nBest;
   }
  
</script>
 </head>
 <body onload="cambia(document.frm.lista)">
  <form name="frm">
   <table border="0">
    <tr>
     <td>
      Ciudad:
     </td>
     <td>
      <input type="text" name="txt" onkeyup="cambia(document.frm.lista)">
     </td>
     <td>
      <select name="lista">
       <option value="0">Centro de mesa</option>
       <option value="1">Manteles</option>
       <option value="2">Mantas</option>
       <option value="3">Servilletas</option>
       <option value="4">Toallas</option>
      </select>
     </td>
    </tr>
   </table>
  </form>
 </body>
</html> 
Saludos.
  #6 (permalink)  
Antiguo 30/01/2003, 12:31
Avatar de Holden  
Fecha de Ingreso: enero-2002
Ubicación: Buenos Aires
Mensajes: 326
Antigüedad: 22 años, 3 meses
Puntos: 4
Amigo te acabas de ganar el cielo.
Gracias.
__________________
Holden-@r
http://www.hvaldez.com.ar
  #7 (permalink)  
Antiguo 30/01/2003, 12:33
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 4 meses
Puntos: 38
Solo espero que el premio no se haga efectivo de inmediato.

  #8 (permalink)  
Antiguo 30/01/2003, 23:03
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 4 meses
Puntos: 38
Pequeño maquillaje:

Código PHP:
<html>
 <
head>
  <
script language="JavaScript">

   function 
evalua(sOpcsTxt){
    var 
nRes 0;
    for (var 
0sTxt.length && sOpc.length && sOpc.charAt(i) == sTxt.charAt(i); i++)
     
nRes++;
    return 
nRes;
   }

   function 
cambia(oCntrl){
    var 
txtVal document.frm.txt.value;
    var 
nAnt = -1;
    var 
nBest = -1;
    var 
nAct;

    for (var 
0nBest == -&& oCntrl.options.lengthi++){
     
nAct evalua(oCntrl.options[i].texttxtVal);
     if (
nAct <= nAntnBest 1;
     
nAnt nAct;
    }
    
oCntrl.selectedIndex nBest;
   }
  
</script>
 </head>
 <body onload="cambia(document.frm.lista)">
  <form name="frm">
   <table border="0">
    <tr>
     <td>
      Ciudad:
     </td>
     <td>
      <input type="text" name="txt" onkeyup="cambia(document.frm.lista)">
     </td>
     <td>
      <select name="lista">
       <option value="0">Centro de mesa</option>
       <option value="1">Mantas</option>
       <option value="2">Manteles</option>
       <option value="3">Servilletas</option>
       <option value="4">Toallas</option>
      </select>
     </td>
    </tr>
   </table>
  </form>
 </body>
</html> 
Saludos.
  #9 (permalink)  
Antiguo 19/02/2003, 10:39
Avatar de Holden  
Fecha de Ingreso: enero-2002
Ubicación: Buenos Aires
Mensajes: 326
Antigüedad: 22 años, 3 meses
Puntos: 4
Despues de un tiepo vuelvo a la carga con el mismo tema...

No me funciona la comestica... :(. No reacciona.

Mi gran pregunta es funciona tanto apra Netscape como para IExplorer? Porque lo probe en netscaper 4.5 y no way!

Gracias
__________________
Holden-@r
http://www.hvaldez.com.ar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:50.