Te estas comiendo el return
Y eso que te he puesto el código.
Código HTML:
<form name="form1" method="post" onSubmit="return validar();" action="insertar.php">
Y aqui:
Código Javascript
:
Ver original<script>
function validar(){
//valido el nombre
if (document.form1.username0.value.length==0)
{
alert("Tiene que escribir su nombre.")
document.form1.username0.focus()
return 0;
}
if(document.form1.username0.value.length<=3)
{
alert("Tiene que contener más de 3 caracteres.")
document.form1.username0.focus()
return 0;
}
if(document.form1.username0.value.length>25)
{
alert("El número máximo de caracteres es 25.")
document.form1.username0.focus()
return 0;
}
document.form1.submit('insertar.php');
}
</script>
Esta línea te sobra document.form1.submit('insertar.php');
Estas retornando 0 en vez de false y no retornas true en caso de ser cierto.
En principio tendría que ser:
Código Javascript
:
Ver original<script>
function validar(){
//valido el nombre
if (document.form1.username0.value.length==0)
{
alert("Tiene que escribir su nombre.")
document.form1.username0.focus()
return false;
}
if(document.form1.username0.value.length<=3)
{
alert("Tiene que contener más de 3 caracteres.")
document.form1.username0.focus()
return false;
}
if(document.form1.username0.value.length>25)
{
alert("El número máximo de caracteres es 25.")
document.form1.username0.focus()
return false;
}
return true;
}
</script>