我有一个MVC表单,我想将某些文本框的条目限制为仅限数字。我发现这个代码可以做到这一点,但是,它也限制了键盘右侧键盘上数字的使用。关于如何允许键盘的任何想法?我不确定是什么导致这种情况发生。
<script type="text/javascript">
function ValidateNumber(e) {
var evt = (e) ? e : window.event;
var charCode = (evt.keyCode) ? evt.keyCode : evt.which;
if (charCode > 31 && (charCode < 48 || charCode > 57)) {
return false;
}
return true;
};
HTML Razor:
@Html.TextBoxFor(m => m.CustomerSSN, new { @placeholder = "Customer SSN", @type="number" })
答案 0 :(得分:2)
另一种方法是使用内置验证的HTML 5输入标记。
<input type="number" name="quantity">
www.w3schools.com/html/html_form_input_types.asp
答案 1 :(得分:0)
所以这就是我解决这个问题的方法......
<script type="text/javascript">
//Allow only numbers entered
$(document).ready(function () {
$("#CustomerSSN").keypress(function (e) {
if (e.which != 8 && e.which != 0 && (e.which < 48 || e.which > 57)) {
return false;
}
});
});