Validar cedula y telf

Respuesta de
a
Avatar
Usuario
Si me pueden ayudar por favor quiero que la cedula no sea menor que 8 números ni mayor que ocho números, y que no acepten puntos ni comas tanto en la cedula como en el telf. Agradecería su ayuda
//Validar cedula
function soloNumeros(evt){
if(window.event){// IE
keynum = evt.keyCode;
}else{
keynum = evt.which;
}
if((keynum>45 && keynum<58) || keynum == 8){
//if(keynum>47 && keynum<58){
return true;
}else{
return false;
}
}
<input name="CED1" type="text" id="CED1" style="FONT-WEIGHT: normal; FONT-SIZE: 8pt; FONT-STYLE: normal; FONT-FAMILY: 'Verdana'" onKeyPress="return soloNumeros(event)" size="10" maxlength="8"/>
 function soloNumerosTELEF1(evt){
 
if(window.event){// IE
keynum = evt.keyCode;
}else{
keynum = evt.which;
}
if((keynum>45 && keynum<58) || keynum == 8){
//if(keynum>47 && keynum<58){
return true;
}else{
return false;
}
}
?<input type="TELEF1" name="TELEF1" id="TELEF1" onkeypress="return soloNumerosTELEF1(event)" size="20" maxlength="50"/>
?
Avatar
Experto
Yo no me complicaba evaluando en cada keypress si los campos son correctos. Lanza la validación en el submit del formulario. De ese modo, las validaciones serán mucho más sencillas.
Saludos:
Carlos.
Avatar
Usuario
Gracias Carlos, use este código
function validar(e) {
    tecla = (document.all) ? e.keyCode : e.which;
    if (tecla==8) return true;
    patron =/[\d]/;
    te = String.fromCharCode(tecla);
    return patron.test(te);
}
Puse como caracteres máximo 8, pero tengo que resolver todavía que no me acepte la cedula menos de 8 dígitos.