含义:0,01,0.01,a, - 不允许
我尝试使用这个jquery,但它仍允许我输入0,02,1.2等
$(document).on('keyup keypress', '.numeric-only', function() {
var aValue = $(this).val();
if ($.isNumeric(aValue) === false) {
$(this).val(aValue.slice(1, -1));
}
});
HTML
<div class="">
<input type="number" class="form-control quan numeric-only" min="1" step="1" minlength="1" value="'.$qty.'"/>
</div>
我已经设法用php验证输入,但我也想用jquery验证它
答案 0 :(得分:0)
您可以使用正则表达式替换不是数字的字符:
$('input').keyup(function() {
var $th = $(this);
var onlyNumbers = $th.val().replace(/[^0-9]/g, function(str) { return ''; } );
var intValue = parseInt(onlyNumbers);
if(intValue) {
$th.val(intValue);
} else {
$th.val(0);
}
});
https://jsfiddle.net/f68yxfho/1/
更新:解析为int以防止左对齐,如@casraf评论