我在Android和iPhone的jQuery Mobile和PhoneGap工作。 目前正面临一个问题;有些字符在输入时会在文本框中输入(仅在移动设备中发生!!而不是在计算机或模拟器中)。但在其KeyPress事件中,我阻止了所有特殊字符。但输入时意外输入了2-3个特殊字符。
我会阻止所有特殊字符,但是当我输入一些数字并突然输入¥或€时,会意外地输入文本框。但是,当我再次按下该键时,它将无法进入。
我的测试团队将其提升为一个大问题..我尝试了很多来解决这个问题。但仍然存在这个问题..我认为这是一个小问题..但我花了很多宝贵的时间。
我的代码是;
('#testkeycode').live('keypress', function(){preventSpacedash(event)});
及其功能是;
function preventSpacedash(event)
{
var key = event.charCode ? event.charCode : event.keyCode;
$(this).innerHTML = key;
if (key == 8364)
{
event.preventDefault();
return false;
}
else if (key == 8361)
{
event.preventDefault();
return false;
}
else if (key == 163)
{
event.preventDefault();
return false;
}
else if ((key >= 32 && key <= 47))
{
event.preventDefault();
return false;
}
else if ((key >= 58 && key <= 64))
{
event.preventDefault();
return false;
}
else if ((key >= 91 && key <= 96))
{
event.preventDefault();
return false;
}
else if ((key >= 123 && key <= 255))
{
event.preventDefault();
return false;
}
}