In JavaScript können Sie ein Element erstellen und referenzieren und dann über dieses Element Attribute abrufen oder festlegen. Allerdings entsprechen die Attribute eines Elements nicht den im Skript verwendeten Attributen. Da es sich um ein relativ weit entferntes Attribut handelt, fällt es selbst Google schwer, das entsprechende Skriptattribut zu finden. Ich bin heute auf dieses Problem gestoßen: Ich muss eine Beschriftung erstellen, die einem Kontrollkästchen entspricht, damit durch Klicken auf die Beschriftung auch das Kontrollkästchen aktiviert werden kann. Dies ist eine sehr verbreitete Technik, wie zum Beispiel der folgende Code:
kann das Kontrollkästchen aktivieren, wenn Sie auf das Wortfeld „Top“ klicken.
Unter normalen Umständen wird dieser Code direkt in die Datei geschrieben und ist einfach auszufüllen. Wenn ich es über ein Skript erstellen muss, stoße ich auf ein Problem. Im Allgemeinen sind die Skriptattribute und die im Tag geschriebenen Attribute identisch. Beispielsweise ist das Zielattribut href des Link-Tags a konsistent. Da for jedoch in JavaScript ein reserviertes Wort ist, kann es nicht als Attribut verwendet werden. Ich habe lange online gesucht, konnte aber nicht finden, was das Skriptattribut ist, das dem for entspricht. Deshalb habe ich mir die folgende Methode ausgedacht, um das Skriptattribut zu finden, das einem Label-Attribut entspricht Attribut des Labels als Beispiel:
Das Prinzip ist folgendes: Ich schreibe zuerst ein HTML-Tag in das Dokument und weise dann dem Attribut einen eindeutigen Wert zu Ich suche nach dem Attribut „abcd“, referenziere dieses Element über Javascript und durchlaufe alle seine Attribute. Wenn der Wert eines Attributs gleich „abcd“ ist, dann der Name dieses Attributs kann als das entsprechende Skriptattribut betrachtet werden. Durch diese Methode habe ich herausgefunden, dass das Skriptattribut, das dem for-Attribut von label entspricht, lauten sollte: htmlFor. Hehe, es ist immer noch ziemlich seltsam. Eine ähnliche Methode kann auch verwendet werden, um CSS-Skripteigenschaften zu finden. Vielleicht möchten Sie es ausprobieren.
<script> <BR> var lbl=document.getElementById("lblTest"); <BR> for(var p in lbl){ <BR> var s=eval("lbl."+p); <BR> if(s=="abcd")alert(p); <BR> } <BR></script>