ValidityState: свойство rangeOverflow
Базовая линия Широко доступно
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузера. Она доступна в браузерах с декабря 2018 года.
Только для чтения rangeOverflow свойство интерфейса ValidityState указывает, соответствует ли значение <input>, после редактирования пользователем, ограничениям, заданным атрибутом элемента max.
Если поле является числовым, включая типы дата, месяц, неделя, время, datetime-local, число и диапазон, и задано значение max, если значение не соответствует ограничениям, заданным значением max, то свойство rangeOverflow будет истинным.
Значение
Булево значение, которое true , если значение не соответствует ограничениям.
Примеры
Вход с числовым переполнением
Следующий пример проверяет корректность числового элемента ввода. Ограничение было добавлено с помощью атрибута max, который устанавливает максимальное значение 18 для ввода. Если пользователь введёт число больше 18, элемент не пройдёт проверку корректности, и стили, соответствующие псевдоклассам :invalid и :out-of-range CSS, будут применены.
/* or :invalid */
input:out-of-range {
outline: red solid 3px;
}
<pre id="log">Validation logged here...</pre> <input type="number" id="age" max="18" />
const userInput = document.getElementById("age");
const logElement = document.getElementById("log");
function log(text) {
logElement.innerText = text;
}
userInput.addEventListener("input", () => {
userInput.reportValidity();
if (userInput.validity.rangeOverflow) {
log("Number is too high!");
} else {
log("Input is valid…");
}
});
Спецификации
| Спецификация |
|---|
| HTML # dom-validitystate-rangeoverflow |
Совместимость браузеров
| Рабочий стол | Мобильный | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari на IOS | Samsung Internet | WebView Android | |
rangeOverflow |
4 | 12 | 4 | 12.1 | 5 | 18 | 4 | 12.1 | 5 | 1.0 | ≤37 |
См. также
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/ValidityState/rangeOverflow