javascript - 防止用户输入最大值

标签 javascript jquery

如果值超过 100,我希望阻止用户输入更多内容。到目前为止,我通过阅读不同的帖子得到了以下信息:

$('.equipCatValidation').keyup(function(e){
        if ($(this).val() > 100) {               
           e.preventDefault();                
        }
    });

确认我想要的值不是字符串长度,并且不能超过 100。

然而,这并不妨碍该领域的进一步投入。我错过了什么。

最佳答案

检查 keyup 来不及了,添加 Angular 色的事件已经发生了。你需要使用按键。但是您还想确保该值不大于 100,因此您还需要使用 keyup 来允许 js 检查该值。

您还必须允许人们删除该值,否则,一旦它 > 100 就无法更改。

<input class="equipCatValidation" type="number" />

当使用 input type="number"时,change 也需要在事件列表中。

$('.equipCatValidation').on('keydown keyup change', function(e){
    if ($(this).val() > 100 
        && e.keyCode !== 46 // keycode for delete
        && e.keyCode !== 8 // keycode for backspace
       ) {
       e.preventDefault();
       $(this).val(100);
    }
});

http://jsfiddle.net/c8Lsvzdk/

关于javascript - 防止用户输入最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24271242/

相关文章:

jquery - 视差一页网站菜单栏

JavaScript : How can i change the date numbers. ...?

javascript - 当其他人消失时动画div

javascript - axios 重放请求 Promise 包括 .then()

javascript - 只有一个我的 jQuery 对话框显示。我如何让它们全部显示出来?

javascript - 如何防止键盘在移动设备上弹出?

javascript - 跳转 Onload jQuery

javascript - 当元素有指定的子元素时移除元素

javascript - 使用ajax数据更改fancybox iframe的内容

javascript - 如何使 Owl Carousel 仅在移动设备上运行