Spec-Zone.ru › Web APIs

HTMLInputElement: метод setCustomValidity()

Базовая Широко доступна

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с декабря 2018 года.

  • Узнать больше
  • Показать полную совместимость
  • Отправить отзыв

Метод HTMLInputElement.setCustomValidity() устанавливает пользовательское сообщение об ошибке валидации для элемента.

Синтаксис

setCustomValidity(message)

Параметры

message

Сообщение, используемое для ошибок валидации.

Возвращаемое значение

None (undefined).

Исключения

Нет.

Примеры

В этом примере мы передаем ID элемента ввода и устанавливаем разные сообщения об ошибках в зависимости от того, отсутствует ли значение, оно слишком мало или слишком велико. Обратите внимание, что сообщение не будет отображено немедленно. Попытка отправить форму отобразит сообщение, или вы можете вызвать метод reportValidity() для элемента.

function validate(inputID) {
  const input = document.getElementById(inputID);
  const validityState = input.validity;

  if (validityState.valueMissing) {
    input.setCustomValidity("You gotta fill this out, yo!");
  } else if (validityState.rangeUnderflow) {
    input.setCustomValidity("We need a higher number!");
  } else if (validityState.rangeOverflow) {
    input.setCustomValidity("That's too high!");
  } else {
    input.setCustomValidity("");
  }

  input.reportValidity();
}

Критчно установить сообщение в пустую строку, если ошибок нет. Пока сообщение об ошибке не пустое, форма не пройдёт валидацию и не будет отправлена.

Спецификации

Спецификация
HTML
# dom-cva-setcustomvalidity

Совместимость с браузерами

Рабочий стол Мобильные
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
setCustomValidity
4Этот метод обновляет только всплывающее окно с ошибкой валидации, а не всплывающую подсказку, появляющуюся при наведении курсора на элемент, см. ошибка 41380670.
12 4 ≤12.1 5
18Этот метод обновляет только всплывающее окно с ошибкой валидации, а не всплывающую подсказку, появляющуюся при наведении курсора на элемент, см. ошибка 41380670.
4 ≤12.1 4
1.0Этот метод обновляет только всплывающее окно с ошибкой валидации, а не всплывающую подсказку, появляющуюся при наведении курсора на элемент, см. ошибка 41380670.
≤37

См. также

  • Учебник: Клиентская валидация форм
  • Руководство: Валидация ограничений
  • ValidityState

© 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/HTMLInputElement/setCustomValidity

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API