Элемент: метод setAttribute()
Базовая Широко поддерживается
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с июля 2015 года.
Метод setAttribute() интерфейса Element устанавливает значение атрибута указанного элемента. Если атрибут уже существует, его значение обновляется; в противном случае добавляется новый атрибут с указанным именем и значением.
Чтобы получить текущее значение атрибута, используйте getAttribute(); чтобы удалить атрибут, вызовите removeAttribute().
Если вам нужно работать с узлом Attr (например, при клонировании из другого элемента) перед добавлением, можно использовать метод setAttributeNode().
Синтаксис
setAttribute(name, value)
Параметры
name-
Строка, определяющая имя атрибута, значение которого нужно установить. Имя атрибута автоматически преобразуется в нижний регистр при вызове
setAttribute()на элементе HTML в документе HTML. value-
Строка, содержащая значение для присваивания атрибуту. Любое значение, отличное от строки, автоматически преобразуется в строку.
Булевы атрибуты считаются true , если они вообще присутствуют на элементе. Вы должны установить value в пустую строку ("") или имя атрибута без начальных и конечных пробелов. См. пример ниже для практического демонстрации.
Поскольку указанное value преобразуется в строку, указание null не обязательно делает то, что вы ожидаете. Вместо удаления атрибута или задания его значения как null, он устанавливает значение атрибута в строку "null". Если вы хотите удалить атрибут, вызовите removeAttribute().
Возвращаемое значение
Ничего (undefined).
Исключения
-
InvalidCharacterErrorDOMException -
Выбрасывается, если значение
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 |
См. также
© 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