ValidityState: thuộc tính badInput

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since December 2018.

Thuộc tính chỉ đọc badInput của giao diện ValidityState chỉ ra liệu người dùng có cung cấp đầu vào mà trình duyệt không thể chuyển đổi hay không. Ví dụ, nếu bạn có phần tử nhập số mà nội dung là một chuỗi.

Giá trị

Một giá trị boolean là true nếu đối tượng ValidityState không tuân theo kiểu dự kiến.

Ví dụ

Phát hiện đầu vào xấu

Ví dụ sau kiểm tra tính hợp lệ của phần tử nhập số. Nếu người dùng nhập văn bản thay vì số, phần tử thất bại xác thực ràng buộc, và các kiểu khớp với input:invalid được áp dụng. Phần tử <pre> ở trên đầu vào hiển thị thông báo xác thực khi badInput của phần tử đánh giá thành true:

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

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

userInput.addEventListener("input", () => {
  userInput.reportValidity();
  if (userInput.validity.badInput) {
    log(`Bad input detected: ${userInput.validationMessage}`);
  }
});

Thông số kỹ thuật

Thông số kỹ thuật
HTML
# dom-validitystate-badinput-dev

Tương thích trình duyệt

Xem thêm