removeAttribute() в JavaScript

Удаление атрибута

Метод removeAttribute() удаляет указанный HTML-атрибут у элемента.

<a class="profile-link" href="/profile" target="_blank">Профиль</a>
const profileLink = document.querySelector('.profile-link');

profileLink.removeAttribute('target');

Атрибут target будет удалён, поэтому ссылка откроется в текущей вкладке. Синтаксис метода: element.removeAttribute(‘имя’).

Если атрибута нет

Если такого атрибута уже нет, метод ничего не сделает и не вызовет ошибку. Предварительно проверять его через hasAttribute() обычно не нужно.

Булевы атрибуты

У булевых атрибутов важно их наличие. Например, удаление disabled включит кнопку.

<button class="save-button" disabled>Сохранить</button>
const saveButton = document.querySelector('.save-button');

saveButton.removeAttribute('disabled');
disabled=“false” всё равно отключает кнопку, потому что атрибут существует. Чтобы включить кнопку через атрибут, используйте removeAttribute(‘disabled’).

Атрибут или свойство

removeAttribute() работает с HTML-атрибутом. Для текущего состояния элементов формы используйте DOM-свойства: input.value, checkbox.checked и button.disabled. Например, кнопку можно включить и так: saveButton.disabled = false.

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

Итого

removeAttribute() удаляет HTML-атрибут и безопасно работает, даже если его нет. Для булевых атрибутов важно само наличие, а текущее состояние элементов формы меняйте через свойства.