Синтаксис
element.setAttribute(name, value);
name -
имя атрибута (строка).value
- значение атрибута.
Пример
В следующем примере, setAttribute()
используется, чтобы установить атрибут disabled
кнопки <button>
, делая её отключенной.
<button>Hello World</button>
var b = document.querySelector("button"); b.setAttribute("disabled", "disabled");
Примечания
При вызове на элементе внутри HTML документа, setAttribute переведет имя атрибута в нижний регистр.
Если указанный атрибут уже существует, его значение изменится на новое. Если атрибута ранее не существовало, он будет создан.
Несмотря на то, что метод getAttribute()
возвращает null у удаленных атрибутов, вы должны использовать removeAttribute() вместо elt.setAttribute(attr, null), чтобы удалить атрибут. Последний заставит значение null
быть строкой "null"
, которая, вероятно, не то, что вы хотите.
Использование setAttribute() для изменения определенных атрибутов особенно значимо в XUL, так как работает непоследовательно, а атрибут определяет значение по умолчанию. Для того, чтобы получить или изменить текущие значения, вы должны использовать свойства. Например, elt.value вместо elt.setAttribure('value', val).
Чтобы установить атрибут, которому значение не нужно, такой как, например, атрибут autoplay
элемента <audio>
, используйте null или пустое значение. Например: elt.setAttribute('autoplay', '')
Методы DOM имеют дело с атрибутами элементов:
Не знают пространства имён, наиболее часто используемые методы | Вариант, знающий пространство имён (Уровень DOM 2) | Уровень DOM 1 методы для работы с Attr узлами напрямую (используется редко) |
Уровень DOM 2 знает о методах пространства имён для работы с Attr узлами напрямую (используется редко) |
---|---|---|---|
setAttribute (DOM 1) |
setAttributeNS |
setAttributeNode |
setAttributeNodeNS |
getAttribute (DOM 1) |
getAttributeNS |
getAttributeNode |
getAttributeNodeNS |
hasAttribute (DOM 2) |
hasAttributeNS |
- | - |
removeAttribute (DOM 1) |
removeAttributeNS |
removeAttributeNode |
- |
Спецификация
- DOM Level 2 Core: setAttribute (представлено в DOM Level 1 Core)
- HTML5: APIs in HTML documents