是否可以在输入数字字段上设置最小值,使其大于0,但用户仍然可以输入0.01例如?输入数字字段超过0?
我已经试过这一点,但它没有工作..
<input required="" name="amount" type="text" min="0.01" value="0.00" />
是否可以在输入数字字段上设置最小值,使其大于0,但用户仍然可以输入0.01例如?输入数字字段超过0?
我已经试过这一点,但它没有工作..
<input required="" name="amount" type="text" min="0.01" value="0.00" />
一个简单的解决方案是,一个input
事件添加到您。我给了这个输入一个id。如果输入小于0.01,则重置。
也用step
来控制精度。
而且,这种情况可能是input = 0.0111
,所以在else语句,我们这样做:Math.round(+this.value * 100)/100;
(+
将强制变量成为号码类型和使用Math.round获得输入四舍五入到两位小数)
document.getElementById('test').addEventListener('change', function (e) {
if(this.value < 0.01){
this.value = '';
} else {
this.value = Math.round(+this.value * 100)/100;
}
});
<input required="" id="test" name="amount" type="number" step="0.01" value="0.00" />
@Shaun更新以处理输入可能为0.0111或0.0199等情况 –
使用type="number"
与min="0"
(你也可以使用step="0.01"
属性,以限制值可以设置增量):
<input required="" name="amount" type="number" min="0" step="0.01" value="0.01" />
但你仍然可以输入0 – guest
@客户你必须使用JavaScript – user7929528
在你的代码type="text"
属性min
可用于number
,range
& date
类型。 试试这个:
<input required="" name="amount" type="number" min="0.01" value="0.01" />
试试这个。
<input required="" name="amount" id="amount" type="number" min="0.01"
value="0.00" onblur="return validate(this);" />
<script type="text/javascript">
function validate(amount){
if(parseFloat(amount.value)<=0){
amount.value = "";
return false;
}
return true;
}
</script>
输入数字字段? '类型= “文本”'?? – user7929528
使用'type =“number”' –
_ more than __ value =“0.00”' – George