- Por ejemplo valida campo por campo y no todos a la vez
- El mensaje de error lo muestro en un <div> ó <td> atravez del id, pero cuando todo esta correcto tengo q llenarlo con .innerHTML=' ' para q no se descuadre la tabla en el ejemplo q voy a poner no se nota ya q no utilizo tablas para q se entienda mejor, pongo el codigo separado para q se entienda
Código PHP:
<head>
<script type="text/javascript">
function validarprod(){
with(document.formulario)
valor = document.getElementById("nomprod").value;
if( valor == null || valor.length == 0 || /^s+$/.test(valor) )
{
document.getElementById('lblNombre').innerHTML='<font color="red" face="Verdana, Arial, Helvetica, sans-serif" size="1">Debe llenar el campo Nombre</font>';
return false;
}
else
document.getElementById('lblNombre').innerHTML=' ';
valor = document.getElementById("precio").value;
if(valor == "" || isNaN(valor)|| /^s+$/.test(valor))
{
document.getElementById('lblPrecio').innerHTML='<font color="red" face="Verdana, Arial, Helvetica, sans-serif" size="1">Debe llenar el campo Precio</font>';
return false;
}
else
document.getElementById('lblPrecio').innerHTML=' ';
return true;
}
</script>
</head>
Código HTML:
<body> <form name="formulario" method="post" onSubmit='return validarprod()' action="#"> Nombre(*) <input type="text" name="nomprod" size="20" maxlength="35"><br> <div id="lblNombre"></div> Descripcion <input type="text" name="descripcion" size="20" maxlength="35"><br> Precio(*) <input type="text" name="precio" size="20" maxlength="15"><br> <div id="lblPrecio"></div> <input type="submit" name="grabar" value="Grabar"> </form> </body>