Търсене в помощните статии

Избягвайте измамите при поддръжката. Никога няма да ви помолим да се обадите или изпратите SMS на телефонен номер или да споделите лична информация. Моля, докладвайте подозрителна активност на "Докладване за злоупотреба".

Научете повече

Why Javascript is not working properly?

  • 2 отговора
  • 10 имат този проблем
  • 4 изгледи
  • Последен отговор от 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.

Променено на от cor-el

Избрано решение

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 !!");
                }
        }
Прочетете този отговор в контекста 👍 3

Всички отговори (2)

more options

Избрано решение

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! :)