所以我有以下代码来检测按下的键是数字,空格还是删除键。如果不是,则停止将密钥输入文本字段。它在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中实现这一目标。
谢谢,
约什
答案 0 :(得分:2)
我花了4个小时,但这是解决方案。希望这会有所帮助:
keydown:function( sender, e, eOpts )
{
if (!isNumberKey(e))
{
if (Ext.browser.is.Firefox)
{
e.event.preventDefault();
}
else
{
e.event.returnValue = false;
}
}
}