该maxlength属性不适用于<input type="number">。这仅在Chrome中发生。
maxlength
<input type="number">
<input type="number" class="test_css" maxlength="4" id="flight_number" name="number"/>
从MDN的文档中<input>
<input>
如果值 类型 属性是text,email,search,password,tel,或url,此属性指定的最大字符数(在Unicode代码点),用户可以输入; 对于其他控件类型,将忽略它。
text
email
search
password
tel
url
因此maxlength在<input type="number">设计上被忽略。
根据您的需求,您可以使用min和max属性作为 INON 在他/她的回答表明(注:这只会定义的约束范围,而不是值的实际字符长度,虽然-9999〜9999将覆盖所有0-4位数字),也可以使用常规文本输入并使用新pattern属性在字段上强制执行验证:
min
max
pattern
<input type="text" pattern="\d*" maxlength="4">