如何解决MVC TextBoxFor的输入字段中只有4位数字
我有一个MVC5项目,并且有一个输入字段,我只想输入8位数字。我尝试过这样实现:
@Html.TextBoxFor(model => model.oldPin,new { maxlength = "8",@class = "form-control disablecopypaste",onkeydown = "return isNumber(event);" })
function isNumber(evt) {
evt = (evt) ? evt : window.event;
var charCode = (evt.which) ? evt.which : evt.keyCode;
if (charCode === 16) {
return false;
}
if (charCode > 31 && (charCode < 48 || charCode > 57)) {
return false;
}
return true;
}
我的问题是,虽然这防止了数字,但允许空格和特殊字符。我该如何预防?它可以与keypress事件一起使用,但是它已经过时了,我担心浏览器的兼容性。有什么办法可以通过keydown事件做到这一点?我看到的所有答案都与按键事件有关。
解决方法
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input class="form-control " id="oldPin" name="oldPin" onkeypress="return allowNumberOnly(event)" type="text" value="">
{{1}}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。