所以我有下面的代码来检测按下的键是数字、空格或删除键的位置。如果没有,它将停止将键输入到文本字段中。它在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确实不存在。我该用什么代替?我相信在火狐一定有办法做到这一点。
谢谢,
Josh
我花了大约4个小时,但这是解决方案。希望这有帮助:
keydown:function( sender, e, eOpts )
{
if (!isNumberKey(e))
{
if (Ext.browser.is.Firefox)
{
e.event.preventDefault();
}
else
{
e.event.returnValue = false;
}
}
}