3 回答
TA贡献1810条经验 获得超4个赞
防止用户输入 0 或负数
下面的代码将阻止用户输入 0 或负值
let qty = document.querySelector("input[name='quantity']");
qty.addEventListener("change", function (event) {
if (this.value < 1) this.value = 1; // minimum is 1
else this.value = Math.floor(this.value); // only integers allowed
})
<input name="quantity" id="dummyId" value="0" type="number" min="1">
如果你不想打扰太多的 javascript,下面是一个更简洁的方法:
<input name="quantity" id="dummyId" value="0" type="number" min="1" onchange="this.value = Math.floor(Math.max(this.value,1))">
Math.floor()如果您不关心四舍五入为整数,则可以删除该位。
TA贡献1765条经验 获得超5个赞
使用以下 onchange 仅授权大于等于 1 的正整数:
<input type="number" onchange="this.value = Math.max(Math.ceil(Math.abs(this.value || 1)) || 1);">
但是值仍然可以使用javascript进行编辑/转换,不要忘记在后端实现真正的控制
添加回答
举报
