我有一个<input type="number">,我想将用户的输入限制为纯数字或带有小数点后最多2位的数字。

基本上,我是在要求一个价格输入。

我想避免使用正则表达式。有办法吗?

<input type="number" required name="price" min="0" value="0" step="any">

当前回答

输入:

<input type="number" name="price" id="price" required>

脚本:

$('#price').on('change', function() {
    var get_price = document.getElementById('price').value;
    var set_price = parseFloat(get_price).toFixed(2);
    $('input[name=price').val(set_price);
})

其他回答

这个问题已经有答案了,但是你可以允许小数 使用step属性。 你可以在这里阅读更多关于它的内容:Allow-decimal-values

你可以用这个。反应钩子

输入< 类型=“当家” name = "价格" 普莱斯placeholder =“回车” 一步=“任何” 所需 />

输入:

<input type="number" name="price" id="price" required>

脚本:

$('#price').on('change', function() {
    var get_price = document.getElementById('price').value;
    var set_price = parseFloat(get_price).toFixed(2);
    $('input[name=price').val(set_price);
})

我发现使用jQuery是我最好的解决方案。

$( "#my_number_field" ).blur(function() {
    this.value = parseFloat(this.value).toFixed(2);
});

使用这段代码

<input type="number" step="0.01" name="amount" placeholder="0.00">

HTML5 Input元素的默认Step值为Step ="1"。