« Programmation JavaScript/Expression littérale » : différence entre les versions
Contenu supprimé Contenu ajouté
Ligne 102 :
==Les chaînes littérales dans les expressions associées aux évennements==
A l'intérieur des balises html, il est possible d'intégrer du code JavaScript associé aux évennements, (comme onclick, onmouseover...). Javascript est à ce moment là interprété en dehors de son territoire propre, c'est à dire entre les balises <script> et </script> ou dans un fichier séparé. <br/>
Sa rédaction obéit alors aux règles de rédaction des attributs des balises, qui n'autorisent pas tout.<br/>
<pre>
<div onclick="alert('Je suis cliqué')">cliquez moi!</div>
</pre>
Html, comme xhtml, ne reconnait pas les séquences de type \uHHHH. Nous devons nous limiter aux caractères échappés classiques, amputés de ( \" ) et ( \' ). En effet, ces deux caractères ne seront pas interprétables comme valeur de la propriété de la balise.<br/>
Si nous voulons afficher '''Je suis "cliqué"''', nous devons recourir aux entités.<br/>
Les entités sont un mécanisme permettant d'insérer n'importe quel caractère dans une chaîne.<br/>
Selon la référence du doctype html, nous aurons accès à des entités munies d'un identificateur. Sinon, sous réserve de disposer d'une '''table adéquate''', nous pouvons reproduire n'importe quel caractère.<br/>
Sans aller plus-avant dans la description des entités, nous pouvons les décrires comme suit :<br/>
L'entité commence par le caractère & (éperluette ou "et commercial") et finit par un point-virgule. Entre ces deux symboles, on rencontre soit un identificateur ( &'''lt'''; &'''gt'''; &'''amp''';), soit le code du caractère exprimé en '''décimal''' et précédé du signe sharp (#). (&#160; &#339;)<br/>
<pre>
<div onclick="alert('Je suis &#34;cliqué&#34;')"> // Affiche: Je suis "cliqué"
cliquez moi!
</div>
</pre>
... Mission accomplie.
[[Programmation JavaScript/Commentaire|Les commentaires >>]]
|