我试图创建一个只允许任意数字位数但不以0开头的函数,但这个验证不能正常工作,因为当我想粘贴并放下输入时,它第一次失败,但下次有效!
jQuery(document).on('input', '.validatenumber', function () {
let start = this.selectionStart, end = this.selectionEnd;
let oldtxt = $(this);
let find = /[^0-9]/g;
if (oldtxt.val().match(find)) {
oldtxt.val(oldtxt.val().replace(find, ''));
this.setSelectionRange(start - 1, end - 1);
}
else {
if (oldtxt.val() < 1) {
oldtxt.val(oldtxt.val().replace(oldtxt.val(), ''));
} else {
oldtxt.val(oldtxt.val() / 1);
this.setSelectionRange(start, end);
}
}
});
为什么只有当我输入作品时才会粘贴或掉落?