為了改善您的使用體驗,本網站正在進行維護,部分功能暫時無法使用。若本站的文件無法解決您的問題,想要向社群發問的話,請到 Twitter 上的 @FirefoxSupport 或 Reddit 上的 /r/firefox 發問,我們的社群成員將很快會回覆您的疑問。

搜尋 Mozilla 技術支援網站

防止技術支援詐騙。我們絕對不會要求您撥打電話或發送簡訊,或是提供個人資訊。請用「回報濫用」功能回報可疑的行為。

了解更多

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