我用过这个脚本
function isNumberKey(evt)
{
var e = event || evt; // for trans-browser compatibility
var charCode = e.which || e.keyCode;
if (charCode > 31 && (charCode < 47 || charCode > 57))
return false;
if (e.shiftKey) return false;
return true;
}
但是这个脚本不能单独使用firefox。 在javascript中限制用户使用shift键的任何替代方法?
答案 0 :(得分:2)
event
,它会破坏您的代码。在测试evt
后将其放置:
function isNumberKey(evt)
{
var e = evt || window.event; //window.event is safer, thanks @ThiefMaster
var charCode = e.which || e.keyCode;
if (charCode > 31 && (charCode < 47 || charCode > 57))
return false;
if (e.shiftKey) return false;
return true;
}
下次检查错误控制台。 :)
答案 1 :(得分:0)
试试此代码..
$(document).keydown(function (e) {
if (e.shiftKey) {
e.preventDefault();
}
});
检查小提琴..
答案 2 :(得分:-2)
你可以使用jQuery
限制任何键按下(也是一组)$(document).ready(function()
{
$('#PHONE_NUMBER').keypress(function(e) {
var a = [];
var k = e.which;
for (i = 48; i < 58; i++)
a.push(i);
a.push(8);
if (!(a.indexOf(k)>=0))
e.preventDefault();
});
});
其中#phone number是input元素的id,而for循环和push函数只推送允许的字符。 48至58是键盘上数字0-9的关键值