Da diese Einstellung kein Attribut ist
Es ist ein Attribut.
Einige Attribute sind als boolesch definiert, dh Sie können ihren Wert angeben und alles andere weglassen. dh anstelle von disabled = " disabled " fügen Sie nur den fett gedruckten Teil ein. In HTML 4, Sie sollten nur den fettgedruckten Teil enthalten , wie die Vollversion als markiert ist ein Feature mit begrenzten Unterstützung (auch wenn das weniger wahr ist jetzt dann , wenn die Spezifikation geschrieben wurde).
Ab HTML 5 haben sich die Regeln geändert und jetzt geben Sie nur den Namen und nicht den Wert an. Dies macht praktisch keinen Unterschied, da der Name und der Wert gleich sind.
Die DOM-Eigenschaft wird auch aufgerufen disabled
und ist ein Boolescher Wert, der true
oder annimmt false
.
foo.disabled = true;
Theoretisch können Sie auch foo.setAttribute('disabled', 'disabled');
und foo.removeAttribute("disabled")
, aber ich würde dies nicht mit älteren Versionen von Internet Explorer vertrauen (die notorisch fehlerhaft sind, wenn es darum geht setAttribute
).
foo
infoo.disabled = true;
? Ist es die ID dieser Schaltfläche?Etwas deaktivieren
ermöglichen
quelle
$('#btnPlaceOrder').disabled = false;
funktioniert, obwohl es nicht funktioniert.$('#btnPlaceOrder')[0].disabled = false
als jquery-Selektor ein Array zurückgegeben. Zucken.Es ist ein Attribut, aber ein boolesches (es braucht also keinen Namen, nur einen Wert - ich weiß, es ist komisch). Sie können das Eigenschaftsäquivalent in Javascript festlegen:
quelle
Versuche Folgendes:
quelle
Der offizielle Weg, um das
disabled
Attribut auf ein zu setzen,HTMLInputElement
ist folgender:Während @ kaushar Antwort zum Aktivieren und Deaktivieren eine ausreichend ist
HTMLInputElement
, und ist wahrscheinlich vorzuziehen , für die Kompatibilität Cross-Browser aufgrund IE ist historisch BuggysetAttribute
, es funktioniert nur , weilElement
Eigenschaften SchattenElement
Attribute. Wenn eine Eigenschaft festgelegt ist, verwendet das DOM standardmäßig den Wert der Eigenschaft anstelle des Werts des entsprechenden Attributs.Es gibt einen sehr wichtigen Unterschied zwischen Eigenschaften und Attributen. Ein Beispiel für eine echte
HTMLInputElement
Eigenschaft istinput.value
, und im Folgenden wird gezeigt, wie das Abschatten funktioniert:Das bedeutet, dass Eigenschaften Schattenattribute sind. Dieses Konzept gilt auch für geerbte Eigenschaften in der
prototype
Kette:Code-Snippet anzeigen
Ich hoffe, dies klärt Verwirrung über den Unterschied zwischen Eigenschaften und Attributen.
quelle
Es ist immer noch ein Attribut. Einstellen auf:
... ist gültig.
quelle
Wenn Sie das Schaltflächenobjekt mit dem Namen b haben:
b.disabled=false;
quelle
Ich denke, der beste Weg könnte sein:
Es funktioniert gut Cross-Browser.
quelle
prop
nicht seinattr
.Sie können weiterhin ein Attribut verwenden. Verwenden Sie einfach das Attribut 'disabled' anstelle von 'value'.
quelle
disabled="disabled"
oder nurdisabled
. Jeder Zeichenfolgenwert entspricht"disabled"
, einschließlichdisabled="true"
unddisabled="false"
.