HTML 属性:maxlength

maxlength 属性定义了用户可以在 <input><textarea> 中输入的字符串的最大 长度。该属性必须是 0 或更高的整数值。

长度以 UTF-16 码单元为单位进行度量,这通常(但不总是)等于字符数。如果未指定 maxlength,或者指定了无效值,则输入没有最大长度。

如果存在并且有效的 minlength 属性,则任何 maxlength 值都必须大于或等于 minlength 的值。如果字段的文本值长度超过 maxlength UTF-16 码单元,则输入将无法通过约束验证。约束验证仅在值由用户更改时应用。

约束验证

虽然浏览器通常会阻止用户输入超出 maxlength 属性允许范围的文本,但如果长度超过 maxlength 允许的长度,则 tooLong 属性(ValidityState 对象的一个只读属性)将为 true。

试一试

<label for="name">Product name:</label>
<input
  id="name"
  name="name"
  type="text"
  value="Shampoo"
  minlength="3"
  maxlength="20"
  required />

<label for="description">Product description:</label>
<textarea
  id="description"
  name="description"
  minlength="10"
  maxlength="40"
  required></textarea>
label {
  display: block;
  margin-top: 1em;
}

input:valid,
textarea:valid {
  background-color: palegreen;
}

示例

html
<input type="password" maxlength="4" />

规范

规范
HTML
# attr-input-maxlength
HTML
# attr-textarea-maxlength

浏览器兼容性

html.elements.input.maxlength

html.elements.textarea.maxlength

另见