Comunidad de diseño web y desarrollo en internet online

Validar Solo Numeros Problemas con Firefox

Citar            
MensajeEscrito el 21 Abr 2010 01:11 pm
Buenas! Tengo una consulta, necesito validar que escriban en un input solo numeros, la siguiente funcion lo hace pero en firefox no me deja borrar ni hacer un copy/paste (Control C - Control V)

Código Javascript :

function soloNumeros(evento)  
{      
    alert("prueba"); 
    //Validar la existencia del objeto event  
    evento = (evento) ? evento : event;  
      
    //Extraer el codigo del caracter de uno de los diferentes grupos de codigos  
    var charCode = (evento.charCode) ? evento.charCode : ((evento.keyCode) ? evento.keyCode : ((evento.which) ? evento.which : 0));  
    
    //Predefinir como valido  
    var respuesta = true;  
      
    //Validar si el codigo corresponde a los NO aceptables  
    if (charCode > 31 && (charCode < 48 || charCode > 57))   
    {  
        //Asignar FALSE a la respuesta si es de los NO aceptables  
        respuesta = false;  
    }  
      
    //Regresar la respuesta  
    return respuesta;  
} 


Alguien me podria ayudar??

Gracias!! Saludos

Por T1000

Claber

121 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 22 Abr 2010 04:06 am
es por que en Mozilla/Firefox envia un charCode con las teclas Ctrl+C y Ctrol-V, antes del if coloca un alert a charCode, y el valor que te de agregalo en tus codiciones ;)

Por wariodiaz

55 de clabLevel



 

firefox
Citar            
MensajeEscrito el 22 Abr 2010 12:44 pm
Gracias por tu respuesta, no termine de enteder lo que me decias!

Logre poder hacer CTRL+C, lo que me falta es poder borrar con BackSpace, siempre en hablando en firefox.

Aca les dejo el Codigo:

Código Javascript :

function solonumeros(evento) 
{
   //e = e || window.event;   
    if(evento.ctrlKey)   
    {
        //alert("Hizo CRTL")
    }
    else
    {
        //alert("ELSE");   
        
        var key;
        
        if(window.event) // IE
        {
            key = evento.keyCode;
            if (key < 48 || key > 57 ) 
            {
                window.event.keyCode=0;
                return false;
            }
        }
        else if(evento.which) // Netscape/Firefox/Opera
        {
            key = evento.which;
            if (key < 48 || key >  57 || key == 8) 
            {
                return false;
            }
        }
        return true;
    }
}


Por favor ayudenme!

Desde ya muchas gracias!!!

Por T1000

Claber

121 de clabLevel



Genero:Masculino  

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.