Cita:
Iniciado por emprear Podés hacerlo sin recurrir a una librería, para campos de texto lo ideal es utilizar el evento onkeyup
Código HTML:
Ver original<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <script type="text/javascript"> //<![CDATA[
function validar(campo){
var elcampo = document.getElementById(campo);
if((!validarEntero(elcampo.value))||(elcampo.value == "")){
elcampo.value = "";
elcampo.focus();
document.getElementById('mensaje').innerHTML = 'Debe ingresar un número entero';
}else{
document.getElementById('mensaje').innerHTML = '';
}
}
function validarEntero(input){
return !isNaN(input)&&parseInt(input)==input;
}
//]]>
<input type="text" id="pregunta" name="pregunta" value="" onkeyup="validar(this.id);" /><br /> <input type="text" id="pregunta2" name="pregunta2" value="" onkeyup="validar(this.id);" /><br /><br /> <input type="submit" value="procesar" /><br /><br />
Dependiendo de lo que deba contener el campo (numeros, letras, rangos, etc) deberás cear los condicionales necesarios
SAludos
Gracias por tu respuesta pero tengo una pregunta.
Si lo que quiero es mostrar diferentes errores a varios campos de texto al usar:
document.getElementById('mensaje').innerHTML = 'Debe ingresar un número entero';
Luego al quitar el error :
else{
document.getElementById('mensaje').innerHTML = '';
}
Si hay mas errores ellos tambien se quitaran :(
Lo podria hacer con una matriz? De modo si pongo asi :
var errores = Array;
//funciones .... con sus mensajes de error
errores[0] = 'mensaje';
//....
errores[1] = 'mensaje2';
...
Y luego para poner lo al <div> puedo usar :
$var poner = errores[0] + errores[1] + errores[2] ....;
Y luego para quitar el error simplemente ago :
errores[0] = null; O errores[0] = '';
Cual de los dos metodos seria mejor ? el null o las comillas?
Se podia crear como lo dije??
Gracias :)