Hola!
Lo conseguí!
Este es el script con el que funciona:
Código PHP:
<script language="javascript">
function validacion(s) {
var email = s.email.value;
var pass = s.password.value;
var valid1 = /(@.*@)|(..)|(@.)|(.@)|(^.)/;
var valid2 = /^.+@([?)[a-zA-Z0-9-.]+.([a-zA-Z]{2,3}|[0-9]{1,3})(]?)$/;
if (valid1.test(email) | !valid2.test(email)) {
reafirma();
return false;
}
if(pass == null || pass.length == 0 || /^s+$/.test(pass)) {
reafirma2();
return false;
}
else {
return true;
}
}
function reafirma(){
var r = document.createElement("span");
var text = document.createTextNode("[B]Email no válido[/B]");
r.appendChild(text);
var ant = document.body.getElementsByTagName("img")[0];
document.body.insertBefore(r,ant);
}
function reafirma2(){
var r = document.createElement("span");
var text = document.createTextNode("[B]debes escribir password[/B]");
r.appendChild(text);
var ant = document.body.getElementsByTagName("img")[1];
document.body.insertBefore(r,ant);
}
</script>
formulario:
Código PHP:
<form id="cont" action="login.php" method="post" name="form" onsubmit="return validacion(this)">
<p id="email">E-mail: <input id="col" type="text" name="email" value="" /></p>
<p id="pass">Password: <input id="col1" type="password" name="password" value="" /></p>
<p><input class="boton" type="submit" value="Login" /></p>
La curiosidad del tema es que cuando se aplica la funcion reafirma, no me funciona poniendo:
Código PHP:
document.body.getElementsByTagName("p")[1]
por lo que poniendo
Código PHP:
document.body.getElementsByTagName("img")[1]
me funciona. ????
Alguien sabe como puede hacerlo más correctamente para situar estos elementos donde yo quiera, y no donde quiera el script.
Y cómo hacer que sólo sea posible una vez,... ya que si el email o password está mal, se siguen escribiendo en la página.
Muchas gracias a todos!
Saludos!