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-атрибут и безопасно работает, даже если его нет. Для булевых атрибутов важно само наличие, а текущее состояние элементов формы меняйте через свойства.