如何在页面加载时将最小输入[type = number]值设置为初始值?

时间:2018-05-30 15:57:07

标签: html input onchange

我需要输入[type = number]字段只接受大于初始值的数字,而不是更低。我试过了:

<div class="form-row">
    <label for="SOA_Serial" class="col-sm-2 col-form-label" style="max-width:150px;">Serial: </label>
    <input type="number" id="serial_input" class="form-control" name="SOA_Serial" style="width:330px;" value="<?php echo escape($SOA_array[2]);?>" onchange="document.getElementById('serial_input').min=this.value;">
</div>

但是,有问题。

1)首先点击箭头,它允许我减少一次,然后不再减少。它根本不需要减少。

2)如果我增加,然后递减,我不能因为onchange而回到原始数字。

我怎样才能a)防止减量低于原始值,或b)完全禁用向下箭头?那可能吗?

1 个答案:

答案 0 :(得分:0)

你的意思是这样吗?

&#13;
&#13;
let changed = (element) => {
  let initial = element.defaultValue * 1;
  if (element.value < initial) {
    element.value = initial;
  }
}
&#13;
<input type="number" value="24" onchange="changed(this)">
&#13;
&#13;
&#13;

编辑:我只是意识到这里有一个内置属性,因此JavaScript有点过分

&#13;
&#13;
<input type="number" value="24" min="24">
&#13;
&#13;
&#13;