簡體   English   中英

FireFox中的Sencha ExtJs TextField KeyDown事件

[英]Sencha ExtJs TextField KeyDown Event in FireFox

因此,我有以下代碼可以檢測到所按下的鍵是數字,空格或刪除鍵。 如果不是,它將阻止將密鑰輸入到文本字段中。 它在Chrome和IE中完美運行。 當我在FireFox中運行它時,出現以下錯誤:returnValue在以下語句中未定義:e.event.returnValue = false;

這是代碼:

keydown:function( sender, e, eOpts )
                    { 
                        if (!isNumberKey(e))
                        {
                            e.event.returnValue = false;
                        }
                    } 

起作用的功能:

function isNumberKey(e)
{
//Local Varaible Declaration
var returnValue = false;

if (e.keyCode >= 96 && e.keyCode <= 105)
{
    returnValue = true;
}
else if (e.keyCode >= 48 && e.keyCode <= 57)
{
    returnValue = true;
}
else if (e.keyCode == 8 || e.keyCode == 46)
{
    returnValue = true;
}

return returnValue;

}

我在Firefox中查看調試器,發現returnValue確實不存在。 我該怎么用呢? 我確信必須有一種方法可以在FireFox中完成。

謝謝,

玩笑

我花了大約4個小時,但這是解決方案。 希望這可以幫助:

keydown:function( sender, e, eOpts )
                        { 
                            if (!isNumberKey(e))
                            {
                                if (Ext.browser.is.Firefox) 
                                {
                                    e.event.preventDefault();
                                }
                                else
                                {
                                    e.event.returnValue = false;
                                }
                            }
                        }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM