Перейти к содержимому

Как удалить атрибут disabled js

  • автор:

Атрибут disabled в JavaScript

В HTML существуют специальные атрибуты без значений, например, атрибут disabled , используемый для блокировки элементов. Для того, чтобы установить такой атрибут, соответствующему свойству требуется присвоить значение true , а чтобы убрать — значение false .

Давайте посмотрим на практике. Пусть у нас есть заблокированый инпут:

Давайте выведем значение атрибута disabled этого инпута:

let elem = document.querySelector(‘#elem’); console.log(elem.disabled); // выведет true

А теперь давайте отблокируем его:

let elem = document.querySelector(‘#elem’); elem.disabled = false;

Дан инпут и кнопка. По нажатию на кнопку заблокируйте инпут.

Дан инпут и две кнопки. Пусть нажатие на первую кнопку блокирует инпут, а нажатие на вторую — отблокирует.

Дан инпут и кнопка. По нажатию на кнопку узнайте, заблокирован инпут или нет.

Как удалить атрибут «disabled» на неактивном элементе при нажатии на него?

Если нажать на input , то он станет активным, а если мимо, то снова заблокированным.

Отслеживать
ответ дан 2 июн 2018 в 18:34
5,264 1 1 золотой знак 18 18 серебряных знаков 36 36 бронзовых знаков

var inPut = document.querySelector('input'); inPut.setAttribute("readonly", "true"); // inPut.setAttribute("disabled", "true"); );

Отслеживать
ответ дан 2 июн 2018 в 18:39
5,821 3 3 золотых знака 15 15 серебряных знаков 24 24 бронзовых знака
Найс. Без лишних референсов к телу документа.
2 июн 2018 в 18:51
@Bharata Просто у меня в скрипте и так дофига референсов к телу…
2 июн 2018 в 18:57

  • javascript
  • html
  • dom
    Важное на Мете
Похожие

Подписаться на ленту

Лента вопроса

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

Дизайн сайта / логотип © 2024 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2024.1.8.3130

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

Как удалить атрибут disabled у button?

Доброго времени суток, подскажите как удалить атрибут disabled в данном случае?

мои попытки не увенчались успехом:

document.getElementsByTagName('button')[0].removeAttribute('disabled'); document.getElementsByTagName("slds-button slds-button_stretch slds-col slds-button_brand").removeAttribute('disabled'); document.getElementsByClassName("slds-button slds-button_stretch slds-col slds-button_brand").removeAttribute('disabled'); document.getElementsByClassName("slds-button slds-button_stretch slds-col slds-button_brand").disabled = false;
  • Вопрос задан более двух лет назад
  • 512 просмотров

2 комментария

Простой 2 комментария

Fozzy777 @Fozzy777 Автор вопроса

Вот, пытался, не получается(

Используйте console.log( document.querySelector(‘button’) );
И откройте консоль в браузере.
Чтобы понять что то, что выбирается в селекторе, это не тот элемент что вам нужен.
Значит нужно в селектор добавить доп условия:

console.log( document.querySelector('button') ); var disabledbutton = document.querySelector('button[title="Continue"]'); disabledbutton.disabled = false;

Решения вопроса 0
Ответы на вопрос 3
Нелинейный наставник

Вы ищете несколько элементов а не 1
Не работает тк как вы не можете применить к масиву «.disabled»
document.querySelector(‘button’).disabled = false

Ответ написан более двух лет назад
Комментировать
Нравится 2 Комментировать

В целом ответ вам дан, добавлю что если вы не хотите делать перебор массива, то можете воспользоваться jquery:

$("button .slds-button") .prop( "disabled", false );

В большинстве конструкторов/движков он уже встроен.
Ответ написан более двух лет назад
Комментировать
Нравится Комментировать

ThunderCat

ThunderCat @ThunderCat Куратор тега JavaScript

Во первых — вы изначально дали неверные данные в вопросе, и несмотря на наличие верного ответа на него не смогли адаптировать его к полному коду.
Во вторых — всегда есть возможность проверить что происходит в вашем коде, например что выберет ваш селектор, магия console.log() в действии.
Ну и в третьих — чтение документации, которым вы пренебрегаете — document.querySelector() выбирает один первый подходящий элемент, которым в вашем примере будет совсем другая кнопка.

Element.removeAttribute()

Вы должны использовать removeAttribute вместо того, чтобы устанавливать значение атрибута в null, используя setAttribute.

Попытка удаления атрибута, которого нет на элементе не вызывает ошибки.

Методы DOM имеют дело с атрибутами элементов:

Не знают пространства имён, наиболее часто используемые методы Вариант, знающий пространство имён (Уровень DOM 2) Уровень DOM 1 методы для работы с Attr узлами напрямую (используется редко) Уровень DOM 2 знает о методах пространства имён для работы с Attr узлами напрямую (используется редко)
setAttribute (DOM 1) setAttributeNS (en-US) setAttributeNode (en-US) setAttributeNodeNS (en-US)
getAttribute (DOM 1) getAttributeNS (en-US) getAttributeNode (en-US) getAttributeNodeNS (en-US)
hasAttribute (DOM 2) hasAttributeNS (en-US)
removeAttribute (DOM 1) removeAttributeNS (en-US) removeAttributeNode (en-US)

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

Found a content problem with this page?

  • Edit the page on GitHub.
  • Report the content issue.
  • View the source on GitHub.

This page was last modified on 3 авг. 2023 г. by MDN contributors.

Your blueprint for a better internet.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *