我试过
onkeypress='return event.charCode >= 49 && event.charCode <= 57'
省略0但我无法输入10或20或任何具有0的数值。
注意:我不希望将0
作为要在text
字段中输入的值。
答案 0 :(得分:0)
你应该写
onkeypress='return event.charCode >= 48 && event.charCode <= 57'
因为&#39; 0&#39;是48
修改强>
document.getElementById("myInput").addEventListener("keypress", myFunction);
function myFunction(event)
{
if(event.key >= '0' && event.key <= '9')
{
if(event.target.value.length == 0 && event.key == '0')
event.preventDefault();
}
else
event.preventDefault();
}
&#13;
<input type="number" id="myInput" name="myName" min="1">
&#13;
答案 1 :(得分:0)
试试这个
onkeypress='return !isNaN(this.value) && Boolean(this.value)'
答案 2 :(得分:0)
我认为如果您不想在开始时允许0,那么您可以在文本框中使用此功能,例如onkeyup="isNumberKey(event,this.id);"
。
--This Function To check Only Number Keys
function isNumberKey(e,v){var t = e.which? e.which:event.keyCode; if((t> = 48&amp; t&lt; = 57)||(t> = 96&amp; t&lt; = 105)||(t == 8 || t == 9 | | t == 127 || t == 37 || t == 39 || t == 46))AvoidZero(v);返回false; }
--This Function To avoid 0 at start
function AvoidZero(v){var V = document.getElementById(v).value; return(V.charAt(0)== 0)? (document.getElementById(v).value = V.substring(1,V.length),false):false; }
这将阻止用户键入单个0,但您可以使用任何数字键入0,例如10 20 30 40