ValidityState: tooShort 属性

Baseline 已广泛支持

此功能已成熟,并可在许多设备和浏览器版本上运行。自 2018 年 12 月起,所有浏览器均支持此功能。

ValidityState 接口的只读 tooShort 属性指示 ValidityState 接口的只读 tooShort 属性表示,经过用户编辑后,<input><button><select><output><fieldset><textarea> 元素的值是否小于元素 minlength 属性设定的最小代码单元长度。

如果 ValidityState 不符合约束,则为 true 的布尔值。

示例

输入值过短

下面的示例检查一个 文本输入元素 的有效性。使用 minlength 属性 添加了一个约束,因此输入需要至少包含 4 个字符。如果用户输入的字符串太短,该元素将验证失败,并应用与 :invalid CSS 伪类匹配的样式。

css
input:invalid {
  outline: red solid 3px;
}
html
<pre id="log">Validation logged here...</pre>
<input type="text" id="userText" minlength="4" />
js
const userInput = document.getElementById("userText");
const logElement = document.getElementById("log");

function log(text) {
  logElement.innerText = text;
}

userInput.addEventListener("input", () => {
  userInput.reportValidity();
  if (userInput.validity.tooShort) {
    log("Not enough characters entered.");
  } else {
    log("Input is valid…");
  }
});

规范

规范
HTML
# dom-validitystate-tooshort-dev

浏览器兼容性

另见