Buscar en Ayuda

Avoid support scams. We will never ask you to call or text a phone number or share personal information. Please report suspicious activity using the “Report Abuse” option.

Learn More

Why Javascript is not working properly?

  • 2 respuestas
  • 10 tienen este problema
  • 4 visitas
  • Última respuesta de tpb2012

more options

I'm working on a web page and trying this script but it is not working (although it is working fine in IE). The code is given below:

My function is:

function validateNumber()
        {
            var x=window.event.keyCode;
            //alert(x);
            if(!(x>=48 && x<=57))
                {
                    alert("Please type a number between 0 and 9 !!");
                }
        }


I'm using it like:

<input type="text" name="cust_age" value=0 size="15" onkeypress="return validateNumber()" style="font-size: 16pt" />

Please let me know how to resolve this problem.

I'm working on a web page and trying this script but it is not working (although it is working fine in IE). The code is given below: My function is:<br /> <br /> <pre><nowiki>function validateNumber() { var x=window.event.keyCode; //alert(x); if(!(x>=48 && x<=57)) { alert("Please type a number between 0 and 9 !!"); } }</nowiki></pre> I'm using it like:<br /> <br /> <pre><nowiki><input type="text" name="cust_age" value=0 size="15" onkeypress="return validateNumber()" style="font-size: 16pt" /></nowiki></pre> Please let me know how to resolve this problem.

Modificadas por cor-el el

Solución elegida

Firefox doesn't use a global window event. On Firefox you need to pass the event to the function.

I think that this should work (I'm not an expert):

<input type="text" name="cust_age" value=0 size="15" onkeypress="return validateNumber(event)" style="font-size: 16pt" />

function validateNumber(event)
        {
            var x=window.event? window.event.keyCode : event;
            //alert(x);
            if(!(x>=48 && x<=57))
                {
                    alert("Please type a number between 0 and 9 !!");
                }
        }
Leer esta respuesta en su contexto 👍 3

Todas las respuestas (2)

more options

Solución elegida

Firefox doesn't use a global window event. On Firefox you need to pass the event to the function.

I think that this should work (I'm not an expert):

<input type="text" name="cust_age" value=0 size="15" onkeypress="return validateNumber(event)" style="font-size: 16pt" />

function validateNumber(event)
        {
            var x=window.event? window.event.keyCode : event;
            //alert(x);
            if(!(x>=48 && x<=57))
                {
                    alert("Please type a number between 0 and 9 !!");
                }
        }
more options

Thanks cor-el, that helped! :)