Javascript或jQuery接受文本字段小于100的数字

Sha*_*lam 5 javascript jquery

在我的项目中,我有一个文本字段,我需要接受小于或等于100的值.在该文本字段中,如何通过javascript或jquery实现此目的.不知何故,我设法只接受文本框中的数字,但我怎么能限制它不接受大于100的数字.

这是我试图只接受数字的代码

function isNumber(evt) {
    evt = (evt) ? evt : window.event;
    var charCode = (evt.which) ? evt.which : evt.keyCode;
    if (charCode > 31 && (charCode < 48 || charCode > 57)) {
        return false;
    }
    return true;
}
Run Code Online (Sandbox Code Playgroud)

Alb*_*bzi 7

首先,您可以number在HTML5中使用类型max设置为100的类型.

<input id="numberbox" type='number' max='100'>
Run Code Online (Sandbox Code Playgroud)

这将允许您的浏览器100在提交时检测它何时结束.但是,它不适用于旧版浏览器和某些智能手机.

或者,你可以这样做:

<input type='text' maxlength='2' pattern='^[0-9]$'>
Run Code Online (Sandbox Code Playgroud)

但我觉得这个选择太过分了.但如果你想这样做,那取决于你.

在jQuery中,您可以这样做:

$('#numberbox').keyup(function(){
  if ($(this).val() > 100){
    alert("No numbers above 100");
    $(this).val('100');
  }
});
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type='text' id='numberbox'>
Run Code Online (Sandbox Code Playgroud)

还要验证后端,只有足够知识的人才能轻易绕过这个.