整理一份相对完整版的输入框 type=‘number’ 时为正整数的操作
css:去掉上下箭头
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
-webkit-appearance: none;
}
input[type="number"]{
-moz-appearance: textfield;
}
<span class="minus">-</span>
<input class="inpNum" type="number" value="1">
<span class="add">+</span>
// 调用监听选择数量输入框
numInput('.minus','.add','.inpNum');
// 禁止数字输入框输入负数
function numInput(reduceNum,addNum,valNum) {
// 数量 加减
var min = 0;
var values = $(valNum);
// 只能输入正整数
values.on('keyup', function () {
if (!/^\d+$/.test(this.value)) { //正则监听判断输入框只能为正整数
this.value = min;
}
})
// 监听input
$(valNum).keyup(function () {
var values = $(valNum).val();
if (values < 0) {
$(this).val(min);
}
// console.log(values);
})
$(addNum).click(function () { //加
var values = $(valNum).val();
values++;
$(valNum).val(values);
});
$(reduceNum).click(function () { //减
var values = $(valNum).val();
values--;
if (values < min) {
$(valNum).val(min);
} else {
$(valNum).val(values);
// console.log(values);
}
});
// input 禁止滚动
$(valNum)[0].addEventListener('DOMMouseScroll', MouseWheel, false);
function MouseWheel(event) {
event = event || window.event;
event.preventDefault();
}
}