html 数字输入只允许 6 位数字

新手上路,请多包涵

我有意见。我只想要数值。我希望只有六个数字。我该怎么做?我有:

 <input type="number" placeholder="YYMMDD" id="myKadA" maxlength="6" style="width:90px !important" onchange="checkMyKad()" size="8"  class="form-control block-centered ic-input" required>

有一个 css 可以从输入框中删除滚动条。

 input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: textfield;
}

以前是 input type="text"maxlength="6" 将其限制为六个字符长。我现在如何仅指定一个 6 位数字

原文由 Jacel 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 958
1 个回答

JavaScript方式

HTML

 <input type="number" placeholder="YYMMDD" id="myKadA" onkeydown="limit(this, 6);" onkeyup="limit(this, 6);" onkeyup="this.value = minmax(this.value, 0, 6)" required>

JS

 function limit(element, max_chars)
{
    if(element.value.length > max_chars) {
        element.value = element.value.substr(0, max_chars);
    }
}
function minmax(value, min, max)
{
    if(parseInt(value) < min || isNaN(parseInt(value)))
        return 0;
    else if(parseInt(value) > max)
        return 100;
    else return value;
}

HTML方式

<input type="number" placeholder="YYMMDD" id="myKadA" maxlength="6" min="0"  max="6" required>

查询方式

<input type="number" placeholder="YYMMDD" id="myKadA" min="0" max="6" required>
var max_chars = 6;
$('#myKadA').keydown( function(e){
    if ($(this).val().length >= max_chars) {
        $(this).val($(this).val().substr(0, max_chars));
    }
});
$("#myKadA").change(function() {
      var max = parseInt($(this).attr('max'));
      var min = parseInt($(this).attr('min'));
      if ($(this).val() > max)
      {
          $(this).val(max);
      }
      else if ($(this).val() < min)
      {
          $(this).val(min);
      }
});

原文由 aswzen 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题