25/02/2012, 05:06
|
| | | Fecha de Ingreso: febrero-2012 Ubicación: Valencia
Mensajes: 54
Antigüedad: 12 años, 10 meses Puntos: 3 | |
Respuesta: comprobar las letras que se introducen en un input No me termina de funcionar esto.... dejo el codigo a ver si alguien me puede echar una manita....
Por un lado las funciones... en el momento de añadirle a la funcion validar Capcha el parametro keypress cuando no se introduce el caracter que corresponde apararece en el input undefined
function validarCaptcha(keypress){
document.getElementById('Imagen').value=document.g etElementById('Imagen').value+keypress;
var cadena = "<?php echo $cadena;?>";
var miArr = cadena.split('');
var texto = document.getElementById('Imagen').value;
if(miArr[texto.length-1] != texto[texto.length-1]){
alert('caracter no valido');
document.getElementById('Imagen').value=texto.subs tring(0,texto.length-1);
return false;
}
}
texto="";
var Tletras=new Array ("q","w","e","r","t","y","u","i","o","p","a","s"," d","f","g","h","j","k","l","ñ","z","x","c", "v","b","n","m");
var z=0;
var mayus=true
function anadir(letra){
texto=document.form.Imagen.value;
if(letra=="\b"){
numeroLetras=texto.length-1
texto=texto.substring(0,numeroLetras);
} else {
if(!mayus){letra=letra.toLowerCase()}
texto=texto+letra;
}
document.form.Imagen.value=texto;
}
y por otro lado el div donde se muestra el teclado virtual
<div id="botones" align="center" style="line-height:32px;"></div>
<script>
var letras="";
var p=0;
for (a=0;a<Tletras.length;a++){
letras=letras+"<input id="+Tletras[a]+" style='width:40px; cursor:pointer; padding-bottom:2px; font-weight:bold; color:#268DE1;' type='Button' value="+Tletras[a]+" onclick=anadir('"+Tletras[a]+"'); validarCaptcha(this.id); return false;> ";
p=p+1;
if(p==10){p=0;letras=letras+"<br>";}
}
document.getElementById('botones').innerHTML=letra s+"<input style='width:auto; cursor:pointer; font-weight:bold; color:#268DE1; padding-bottom:2px;' alt='Borrar' type='Button' value='Borrar'; onClick=anadir('\b')></font>";
</script>
cuando lo escribo desde el teclado manual funciona perfectamente... pero desde el teclado virtual no me da el error en caso de que el caracter que he introducido no corresponda... |