this.class vs. diese.getAttribute('class')
Habe ich ein radio-button, und wenn Sie gedrückt wird, eine Funktion aufgerufen wird, die akzeptiert, dass die Klasse für den button als argument. So etwas wie dieses:
<input class="myclass" type="radio" name="name" value="x" checked="true" onClick="myFunction(this.value, this.getAttribute('class'))"></input>
Feststellen, dass in meinem onClick, ich habe this.getAttribute('class')
anstatt einfach this.class
. Ich habe versucht, mit this.class aber ich habe immer undefined
. Ist this.class
keine akzeptable Sache zu tun? Ich habe verwendet this.id
an anderer Stelle in meinem code, der funktioniert gut, aber für einige Grund ich getAttribute
wenn ich will, um die Referenz-Klasse.
Also im Grunde bin ich der Frage " was ist der Unterschied zwischen this.class
und this.getAttribute('class')
?
this.class
ist falsch; Sie soll den Zugangthis.className
.- Oder
classList
: developer.mozilla.org/en-US/docs/Web/API/element.classList getAttribute
sieht für HTML-Attribute. Mitthis.class
sieht für einen JS-Attribut, die nicht existiert. Die JS-Entsprechung des HTML -class
Attribut istclassName
.class
ist auch ein reserviertes Schlüsselwort in JavaScript, so vermeiden Sie es.- mögliche Duplikate von HTML - Attribute vs-Eigenschaften
- vielen Dank an alle - diese.className ist in der Tat, was ich wollte
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden className, um den aktuellen Wert des class-Attributs. Ich glaube, der Grund hinter diesem ist, weil class ein reserviertes Wort.
Gibt es keine
this.class
. ich denke du meinstthis.className
.sehen:
getAttribute("class")
ist mehr universal, weil es kann verwendet werden in verschiedenen Arten von Dokumenten. In XML-Dokumenten, am wichtigsten ist. Einschließlich SVG.this.className
funktioniert nur in HTML -