Ver Mensaje Individual
  #5 (permalink)  
Antiguo 13/08/2008, 09:42
Avatar de estibaliz2006
estibaliz2006
 
Fecha de Ingreso: noviembre-2006
Mensajes: 439
Antigüedad: 17 años, 6 meses
Puntos: 1
Respuesta: no me valida el email en firefox

nada sigue sin ir. a ver. el codigo es el que he puesto: el form es este:

Código PHP:
<form name="form" id="form" onReset="return Limpiar();" action="procesa.php" ENCTYPE="multipart/form-data" METHOD="POST">  
Nombre:  
<
input type="text" size=55 name="nombre" onkeypress "return pulsar(event)" onKeyUp="deshabilita(this.form);" onBlur="valida(this);"><br
<
span class="mensajeay" id="nombreobl">Campo obligatorio</span><br
Email
<
input type="text" size=55 name="email" onkeypress "return pulsar(event)" onKeyUp="deshabilita(this.form);" onblur="document.getElementById('emailobl').style.visibility =(ValidarEmail('email')) ? 'hidden' : 'visible';"><br
<
span class="mensajeay" id="emailobl">Campo obligatorioIntroduzca un email válido</span> <br> <br
<
input type="submit" name="B1" value="Enviar"  disabled
Bien. las funciones que utiliza ese form son estas:
Código PHP:
//Funcion limpiar
function Limpiar(){

    if (
window.confirm('¡¡¡Atención!!! Se van a eliminar todos los datos introducidos')){
         return 
true;
     } 
     return 
false;        
}
            
//Validar Formulario
///valida campos no vacíos
function valida(c)
{
//alert("validando");
var i,v;
if(
c)
 {
 
i=c.name+"obl";
 (
c.value.length<3)?v="visible":v="hidden";
 
document.getElementById(i).style.visibility=v;
 }
}
///evitar espacios en blanco
function pulsar(e) {
    
tecla = (document.all) ? e.keyCode e.which;
    if (
tecla==8) return true;
    
patron =/s/;
    
te String.fromCharCode(tecla);
    return !
patron.test(te);
}

///deshabilita botón enviar si campos vacíos
function deshabilita(form)
{
    if ((
form.email.value != "") && (form.nombre.value.length != "") && (form.nombre.value.length >= && ValidarEmail("email") )
    { 
        
form.B1.disabled false
    } 
    else 
    { 
        
form.B1.disabled true
    }
}

function 
ValidarEmail(field)
{
var 
retVal true;
var 
email = /^[w-.]+@([w-]+.)+[w-]{2,4}$/;
if (!
email.test(document.getElementById(field).value) ) 
{
retVal false
}
return 
retVal

bien. como os digo en ie lo hace todo bien (probadlo) pero en firefox no hace dos cosas:
primero no da el mensaje de ayuda del email si no introduces un email válido y
segundo: no activa el botón enviar.

a qué es debido. la propiedad "disabled" no funciona en firefox?