Wie kann ich das Attribut "disabled" mithilfe von Javascript aus einer HTML-Eingabe entfernen?
<input id="edit" disabled>
Bei onClick möchte ich, dass mein Eingabe-Tag nicht aus dem Attribut "disabled" besteht.
Wie kann ich das Attribut "disabled" mithilfe von Javascript aus einer HTML-Eingabe entfernen?
<input id="edit" disabled>
Bei onClick möchte ich, dass mein Eingabe-Tag nicht aus dem Attribut "disabled" besteht.
Antworten:
Setzen Sie die disabled
Eigenschaft des Elements auf false:
document.getElementById('my-input-id').disabled = false;
Wenn Sie jQuery verwenden, lautet das Äquivalent:
$('#my-input-id').prop('disabled', false);
Für mehrere Eingabefelder können Sie stattdessen nach Klassen darauf zugreifen:
var inputs = document.getElementsByClassName('my-input-class');
for(var i = 0; i < inputs.length; i++) {
inputs[i].disabled = false;
}
Wo document
könnte zum Beispiel durch ein Formular ersetzt werden, um nur die Elemente in diesem Formular zu finden. Sie können auch getElementsByTagName('input')
alle Eingabeelemente abrufen. In Ihrer for
Iteration müssten Sie dies dann überprüfen inputs[i].type == 'text'
.
Warum nicht einfach dieses Attribut entfernen?
elem.removeAttribute('disabled')
elem.removeAttr('disabled')
jQuery("#success").removeAttr("disabled");
- das funktioniert bei mir, danke!
removeAttribute
scheint in IE11 unterstützt zu werden. Es ist als aktiviert markiert unknown
, also kann ich nur den IE öffnen und prüfen, ob es funktioniert. Es tut.
So setzen Sie den disabled
Wert mit der name
Eigenschaft der Eingabe auf false :
document.myForm.myInputName.disabled = false;
Die beste Antwort ist einfach removeAttribute
element.removeAttribute("disabled");
method 1 <input type="text" onclick="this.disabled=false;" disabled>
<hr>
method 2 <input type="text" onclick="this.removeAttribute('disabled');" disabled>
<hr>
method 3 <input type="text" onclick="this.removeAttribute('readonly');" readonly>
Der Code der vorherigen Antworten scheint im Inline-Modus nicht zu funktionieren, aber es gibt eine Problemumgehung: Methode 3.
siehe Demo https://jsfiddle.net/eliz82/xqzccdfg/
method 1 <input type="text" onclick="this.disabled=false;" disabled> <hr> method 2 <input type="text" onclick="this.removeAttribute('disabled');" disabled>