En JavaScript, vous pouvez créer et référencer un élément, puis obtenir ou définir des attributs via cet élément. Cependant, les attributs d'un élément ne correspondent pas aux attributs utilisés dans le script. Attribut relativement éloigné, même Google a du mal à trouver son attribut de script correspondant. J'ai rencontré ce problème aujourd'hui : je dois créer une étiquette correspondant à une case à cocher, afin que cliquer sur l'étiquette puisse également sélectionner la case à cocher. Il s'agit d'une technique très courante, comme le code suivant :
peut cocher la case lorsque vous cliquez sur la case du mot "Top".
Dans des circonstances normales, ce code est écrit directement dans le fichier et est facile à compléter. Lorsque j'ai besoin de le créer via un script, je rencontre un problème. Généralement, les attributs du script et les attributs écrits dans la balise sont les mêmes. Par exemple, l'attribut cible href de la balise de lien a est cohérent. Mais comme for est un mot réservé en JavaScript, il ne peut pas être utilisé comme attribut. J'ai longtemps cherché en ligne mais je n'ai pas trouvé à quoi correspond l'attribut de script, j'ai donc proposé la méthode suivante pour trouver l'attribut de script correspondant à un attribut d'étiquette. Prenons maintenant l'attribut de script correspondant à for. attribut de label à titre d'exemple :
Le principe est le suivant : j'écris d'abord une balise html dans le document, puis j'attribue une valeur unique à l'attribut. Je recherche. Dans l'exemple, c'est pour l'étiquette. Copie d'attribut "abcd", puis référencez cet élément via javascript, et parcourez tous ses attributs. Si la valeur d'un attribut est égale à abcd, alors le nom de cet attribut. peut être considéré comme son attribut de script correspondant. C'est grâce à cette méthode que j'ai découvert que l'attribut script correspondant à l'attribut for de label devait être : htmlFor. Héhé, c'est quand même assez bizarre. Une méthode similaire peut également être utilisée pour trouver les propriétés du script CSS. Vous souhaiterez peut-être l'essayer.
<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>