Ver Mensaje Individual
  #2 (permalink)  
Antiguo 19/07/2005, 10:02
Avatar de Salome
Salome
 
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 22 años, 3 meses
Puntos: 1
listo!! encontré lo que necesitaba...

http://www.desarrolloweb.com/articulos/1015.php?manual=22

pero bueno.. con este script.. todo perfecto.. pero si entonces yo digite mal los caracteres y me trajo un dato... mmm con este script debo volver a dar click sobre el select.. alguna otra idea para mejorarlo ??



Código:
<script language="JavaScript1.2">
var digitos=10 //cantidad de digitos buscados
var puntero=0					
var buffer=new Array(digitos)  //declaración del array Buffer
var cadena=""			

function buscar_op(obj,objfoco){
var letra = String.fromCharCode(event.keyCode)
if(puntero >= digitos){
		cadena="";
		puntero=0;
	}
//si se presiona la tecla ENTER, borro el array de teclas presionadas y salto a otro objeto...
if (event.keyCode == 13){
		borrar_buffer();
		if(objfoco!=0) objfoco.focus(); //evita foco a otro objeto si objfoco=0
	}
//sino busco la cadena tipeada dentro del combo...
else{
	buffer[puntero]=letra;					//guardo en la posicion puntero la letra tipeada
	cadena=cadena+buffer[puntero];			//armo una cadena con los datos que van ingresando al array
	puntero++;								
 //barro todas las opciones que contiene el combo y las comparo la cadena...
	for (var opcombo=0;opcombo < obj.length;opcombo++){   
		if(obj[opcombo].text.substr(0,puntero).toLowerCase()==cadena.toLowerCase()){
			obj.selectedIndex=opcombo;
					}
		}
	}
event.returnValue = false; //invalida la acción de pulsado de tecla para evitar busqueda del primer caracter
}


function borrar_buffer(){
//inicializa la cadena buscada
	cadena="";
	puntero=0;
}
</script>

<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<table width="544" border="0" cellpadding="0" cellspacing="0">
  <tr> 
    <td width="89" height="29"></td>
    <td width="114"></td>
    <td width="26"></td>
    <td width="315"></td>
  </tr>
  <tr> 
    <td height="19"></td>
    <td valign="top"> 
      <select name="combo1" onKeypress=buscar_op(this,text2) onblur=borrar_buffer() onclick=borrar_buffer()>
        <option>Argentina</option>
        <option>Australia</option>
        <option>Bolivia</option>
        <option>Brasil</option>
        <option>Canada</option>
        <option>Colombia</option>
        <option>Dinamarca</option>
        <option>Estados Unidos</option>
        <option>Estonia</option>
        <option>Austria</option>
        <option>Bulgaria</option>
        <option>Chile</option>
        <option>Espa&ntilde;a</option>
        <option>China</option>
        <option>Costa Rica</option>
        <option>Croacia</option>
        <option>Ecuador</option>
      </select>
    </td>
    <td></td>
    <td></td>
  </tr>
  <tr> 
    <td height="18"></td>
    <td></td>
    <td></td>
    <td></td>
  </tr>
  <tr>
    <td height="28"></td>
    <td colspan="2" valign="top"> 
      <input type="text" name="text2">
    </td>
    <td></td>
  </tr>
  <tr>
    <td height="58"></td>
    <td></td>
    <td></td>
    <td></td>
  </tr>
</table>
</body>
</html>