function OnlyNumber(evt) { var evt = evt || window.event; var m = String.fromCharCode(evt.keyCode); // 48~57=0~9、96~105=テンキーの0~9、9=タブキー、13=エンターキー、32=スペースキー、37=左矢印キー、39=右矢印キー、46=Deleteキー、18=Altキー、112~123=F1~F12キー、 if((48<=evt.keyCode && evt.keyCode<=57) || (96<=evt.keyCode && evt.keyCode<=105) || evt.keyCode == 9 || evt.keyCode == 13 || evt.keyCode == 32 || evt.keyCode == 37 || evt.keyCode == 39 || evt.keyCode == 46 || evt.keyCode == 18 || (112<=evt.keyCode && evt.keyCode<=123) ){ return true; } // 0~9、スペースキー、バックスペースキー以外 if("0123456789\b\r".indexOf(m, 0) < 0) return false; return true; } $('#onlyNum').bind('keydown',function(){ return OnlyNumber(event); }); $('#onlyNum').bind('contextmenu',function(){ return false; });
<input type="text" id="onlyNum">
#onlyNum{ ime-mode:disabled; }