数字输入最小属性不适用于浮点数

Number input min attribute not working with floats

使用下面的 HTML,当我在输入中键入值 3 并单击 submit 时,Chrome(至少)显示以下 错误 在弹出窗口中:

Please enter a valid value. The two nearest valid values are 2.0001 and 3.0001.

这没有意义。我已将 minimum 值设置为 0.0001 并输入 3大于 0.0001.

document.getElementById('form').onsubmit = function(e) {
  e.preventDefault()
}
<form id="form">

  <input placeholder="0.000" 
         id="something" 
         type="number" 
         name="something" 
         min="0.0001" 
         required>
       
  <button type="submit">submit</button>
  
</form>

step 属性的默认值为 1,并且由于您在输入中应用了 min,因此 没有 积分 n 使得 min + n * step (0.0001 + n * 1) 等于 3.

您可以将步骤更改为 0.0001any

document.getElementById('form').onsubmit = function(e) {
  e.preventDefault();
  console.log(e.target.elements[0].value);
}
<form id="form" onsubmit="onSubmit">
  <input
    placeholder="0.000"
    id="something"
    type="number"
    name="something"
    min="0.0001"
    step="any"
    required
  >
  <button type="submit">submit</button>
</form>