Spec-Zone.ru › Web APIs

Элемент: метод setAttribute()

Базовая Широко поддерживается

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

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

Метод setAttribute() интерфейса Element устанавливает значение атрибута указанного элемента. Если атрибут уже существует, его значение обновляется; в противном случае добавляется новый атрибут с указанным именем и значением.

Чтобы получить текущее значение атрибута, используйте getAttribute(); чтобы удалить атрибут, вызовите removeAttribute().

Если вам нужно работать с узлом Attr (например, при клонировании из другого элемента) перед добавлением, можно использовать метод setAttributeNode().

Синтаксис

setAttribute(name, value)

Параметры

name

Строка, определяющая имя атрибута, значение которого нужно установить. Имя атрибута автоматически преобразуется в нижний регистр при вызове setAttribute() на элементе HTML в документе HTML.

value

Строка, содержащая значение для присваивания атрибуту. Любое значение, отличное от строки, автоматически преобразуется в строку.

Булевы атрибуты считаются true , если они вообще присутствуют на элементе. Вы должны установить value в пустую строку ("") или имя атрибута без начальных и конечных пробелов. См. пример ниже для практического демонстрации.

Поскольку указанное value преобразуется в строку, указание null не обязательно делает то, что вы ожидаете. Вместо удаления атрибута или задания его значения как null, он устанавливает значение атрибута в строку "null". Если вы хотите удалить атрибут, вызовите removeAttribute().

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

Ничего (undefined).

Исключения

InvalidCharacterError DOMException

Выбрасывается, если значение name не является допустимым именем XML; например, оно начинается с цифры, тире или точки, или содержит символы, отличные от буквенно-цифровых символов, подчеркиваний, тире или точек.

Примеры

В следующем примере setAttribute() используется для установки атрибутов на <button>.

HTML

<button>Hello World</button>

JavaScript

const button = document.querySelector("button");

button.setAttribute("name", "helloButton");
button.setAttribute("disabled", "");

Это демонстрирует две вещи:

  • Первый вызов setAttribute() выше показывает изменение значения атрибута name на "helloButton". Вы можете увидеть это, используя инспектор страницы вашего браузера (Chrome, Edge, Firefox, Safari).
  • Чтобы задать значение булева атрибута, например disabled, можно указать любое значение. Рекомендуются пустая строка или имя атрибута. Важно то, что если атрибут вообще присутствует, независимо от его фактического значения, его значение считается true. Отсутствие атрибута означает, что его значение false. Установив значение атрибута disabled в пустую строку (""), мы устанавливаем disabled на true, что приводит к отключению кнопки.

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

Спецификация
DOM
# ref-for-dom-element-setattribute①

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

Рабочий стол Мобильные
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
setAttribute 1 12 1 8 1 18 4 10.1 1 1.0 4.4

См. также

  • Element.hasAttribute()
  • Element.getAttribute()
  • Element.removeAttribute()
  • Element.toggleAttribute()

© 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/Element/setAttribute

Spec-Zone.ru

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