Mise à part le fait qu'il n'accepte que j'utilise la balise <marquee>
(et je le comprends, je vais prendre le temps de faire un truc en
JavaScript), il m'alerte pour un onclick où j'utilise le signe <
(inférieur) comme étant un début de balise ?
Bonjour, Mise à part le fait qu'il n'accepte que j'utilise la balise <marquee> (et je le comprends, je vais prendre le temps de faire un truc en JavaScript), il m'alerte pour un onclick où j'utilise le signe < (inférieur) comme étant un début de balise ? <https://validator.w3.org/check?uri=http%3A%2F%2Fastrophoto.free.fr%2Fcalculs%2Findex.htm> <http://astrophoto.free.fr/calculs/index.htm> (ligne 222) Je ne parviens pas à trouver l'erreur qui doit être quelque part en amont si j'ai bien compris ?! ------------------------------------------------------------------ onclick=" pdate=document.forms[1]; if (pdate.mois.value<12) pdate.mois.value++; else {pdate.mois.value=1;pdate.annee.value++} calculjj();" ------------------------------------------------------------------ :(
Dans les documentations plus ou moins officielles, la valeur à attribuer à l'attribut onclick n'est à mon sens pas claire. Le texte est ambigu, mais les examples proposent exclusivement un appel de fonction (donc du code Javascript). A chaque fois que j'ai eu des soucis à ce niveau, en général sur un navigateur donné, j'avais tenté autre chose. J'ai donc définitivement pris la décision de systématiquement utiliser un appel de fonction. Ou de lier l'élément à un handler dans le code, ce qui est plus souple. Le validator me semble bogué, puisque soit il accepte la construction du onclick (raw javascript, qui plus est multi-ligne) et l'insère virtuellement entre <script></script>, soit il la warne (la bonne attitude, je pense). Concernant votre problème, et considérant que juste faire taire le validator est particulièrement improductif, voire pire quand vous changez la sémantique du code en remplaçant un '>' par un '==', je vous suggère de refactorer en ajoutant un bloc Javascript avec une fonction par onclick=. Ce bloc est le bon endroit pour gérer les gestions un peu blingbling ded boutons (toggle, couleur, texte, etc.). -- Pierre Maurette
Thierry Loiseau :
Bonjour,
Mise à part le fait qu'il n'accepte que j'utilise la balise <marquee>
(et je le comprends, je vais prendre le temps de faire un truc en
JavaScript), il m'alerte pour un onclick où j'utilise le signe <
(inférieur) comme étant un début de balise ?
Je ne parviens pas à trouver l'erreur qui doit être quelque part en
amont si j'ai bien compris ?!
------------------------------------------------------------------
onclick="
pdate=document.forms[1];
if (pdate.mois.value<12)
pdate.mois.value++;
else {pdate.mois.value=1;pdate.annee.value++}
calculjj();"
------------------------------------------------------------------
:(
Dans les documentations plus ou moins officielles, la valeur à
attribuer à l'attribut onclick n'est à mon sens pas claire. Le texte
est ambigu, mais les examples proposent exclusivement un appel de
fonction (donc du code Javascript). A chaque fois que j'ai eu des
soucis à ce niveau, en général sur un navigateur donné, j'avais tenté
autre chose. J'ai donc définitivement pris la décision de
systématiquement utiliser un appel de fonction. Ou de lier l'élément à
un handler dans le code, ce qui est plus souple.
Le validator me semble bogué, puisque soit il accepte la construction
du onclick (raw javascript, qui plus est multi-ligne) et l'insère
virtuellement entre <script></script>, soit il la warne (la bonne
attitude, je pense).
Concernant votre problème, et considérant que juste faire taire le
validator est particulièrement improductif, voire pire quand vous
changez la sémantique du code en remplaçant un '>' par un '==', je vous
suggère de refactorer en ajoutant un bloc Javascript avec une fonction
par onclick=. Ce bloc est le bon endroit pour gérer les gestions un peu
blingbling ded boutons (toggle, couleur, texte, etc.).
Bonjour, Mise à part le fait qu'il n'accepte que j'utilise la balise <marquee> (et je le comprends, je vais prendre le temps de faire un truc en JavaScript), il m'alerte pour un onclick où j'utilise le signe < (inférieur) comme étant un début de balise ? <https://validator.w3.org/check?uri=http%3A%2F%2Fastrophoto.free.fr%2Fcalculs%2Findex.htm> <http://astrophoto.free.fr/calculs/index.htm> (ligne 222) Je ne parviens pas à trouver l'erreur qui doit être quelque part en amont si j'ai bien compris ?! ------------------------------------------------------------------ onclick=" pdate=document.forms[1]; if (pdate.mois.value<12) pdate.mois.value++; else {pdate.mois.value=1;pdate.annee.value++} calculjj();" ------------------------------------------------------------------ :(
Dans les documentations plus ou moins officielles, la valeur à attribuer à l'attribut onclick n'est à mon sens pas claire. Le texte est ambigu, mais les examples proposent exclusivement un appel de fonction (donc du code Javascript). A chaque fois que j'ai eu des soucis à ce niveau, en général sur un navigateur donné, j'avais tenté autre chose. J'ai donc définitivement pris la décision de systématiquement utiliser un appel de fonction. Ou de lier l'élément à un handler dans le code, ce qui est plus souple. Le validator me semble bogué, puisque soit il accepte la construction du onclick (raw javascript, qui plus est multi-ligne) et l'insère virtuellement entre <script></script>, soit il la warne (la bonne attitude, je pense). Concernant votre problème, et considérant que juste faire taire le validator est particulièrement improductif, voire pire quand vous changez la sémantique du code en remplaçant un '>' par un '==', je vous suggère de refactorer en ajoutant un bloc Javascript avec une fonction par onclick=. Ce bloc est le bon endroit pour gérer les gestions un peu blingbling ded boutons (toggle, couleur, texte, etc.). -- Pierre Maurette
loiseauthierry
Pierre Maurette wrote:
Thierry Loiseau :
Bonjour, Mise à part le fait qu'il n'accepte que j'utilise la balise <marquee> (et je le comprends, je vais prendre le temps de faire un truc en JavaScript), il m'alerte pour un onclick où j'utilise le signe < (inférieur) comme étant un début de balise ?
<http://astrophoto.free.fr/calculs/index.htm> (ligne 222) Je ne parviens pas à trouver l'erreur qui doit être quelque part en amont si j'ai bien compris ?! ------------------------------------------------------------------ onclick=" pdate=document.forms[1]; if (pdate.mois.value<12) pdate.mois.value++; else {pdate.mois.value=1;pdate.annee.value++} calculjj();" ------------------------------------------------------------------ :(
Dans les documentations plus ou moins officielles, la valeur à attribuer à l'attribut onclick n'est à mon sens pas claire. Le texte est ambigu, mais les examples proposent exclusivement un appel de fonction (donc du code Javascript). A chaque fois que j'ai eu des soucis à ce niveau, en général sur un navigateur donné, j'avais tenté autre chose. J'ai donc définitivement pris la décision de systématiquement utiliser un appel de fonction. Ou de lier l'élément à un handler dans le code, ce qui est plus souple. Le validator me semble bogué, puisque soit il accepte la construction du onclick (raw javascript, qui plus est multi-ligne) et l'insère virtuellement entre <script></script>, soit il la warne (la bonne attitude, je pense). Concernant votre problème, et considérant que juste faire taire le validator est particulièrement improductif, voire pire quand vous changez la sémantique du code en remplaçant un '>' par un '==', je vous suggère de refactorer en ajoutant un bloc Javascript avec une fonction par onclick=. Ce bloc est le bon endroit pour gérer les gestions un peu blingbling ded boutons (toggle, couleur, texte, etc.).
Je cite intégralement votre message que je trouve très intéressant ! "juste faire taire le validator est particulièrement improductif" Tout à fait d'accord et... d'où mon article ! Ceci-dit, *si* le Validator bogue à ce niveau, je considèrerais bien mon code comme juste et fonctionnel... Reprendre tout mes scripts ne me semble pas trop envisageable :( Merci pour votre message encore une fois !! Thierry -- * * __*__ * * * * -----oOOo--- O ---oOOo------- * * http://astrophoto.free.fr * * * -------- oOOo oOOo ---------- *
Pierre Maurette <maurette.pierre@free.fr> wrote:
Thierry Loiseau :
> Bonjour,
>
> Mise à part le fait qu'il n'accepte que j'utilise la balise <marquee>
> (et je le comprends, je vais prendre le temps de faire un truc en
> JavaScript), il m'alerte pour un onclick où j'utilise le signe <
> (inférieur) comme étant un début de balise ?
>
>
>
> <http://astrophoto.free.fr/calculs/index.htm> (ligne 222)
>
> Je ne parviens pas à trouver l'erreur qui doit être quelque part en
> amont si j'ai bien compris ?!
>
> ------------------------------------------------------------------
> onclick="
> pdate=document.forms[1];
> if (pdate.mois.value<12)
> pdate.mois.value++;
> else {pdate.mois.value=1;pdate.annee.value++}
> calculjj();"
> ------------------------------------------------------------------
>
> :(
Dans les documentations plus ou moins officielles, la valeur à
attribuer à l'attribut onclick n'est à mon sens pas claire. Le texte
est ambigu, mais les examples proposent exclusivement un appel de
fonction (donc du code Javascript). A chaque fois que j'ai eu des
soucis à ce niveau, en général sur un navigateur donné, j'avais tenté
autre chose. J'ai donc définitivement pris la décision de
systématiquement utiliser un appel de fonction. Ou de lier l'élément à
un handler dans le code, ce qui est plus souple.
Le validator me semble bogué, puisque soit il accepte la construction
du onclick (raw javascript, qui plus est multi-ligne) et l'insère
virtuellement entre <script></script>, soit il la warne (la bonne
attitude, je pense).
Concernant votre problème, et considérant que juste faire taire le
validator est particulièrement improductif, voire pire quand vous
changez la sémantique du code en remplaçant un '>' par un '==', je vous
suggère de refactorer en ajoutant un bloc Javascript avec une fonction
par onclick=. Ce bloc est le bon endroit pour gérer les gestions un peu
blingbling ded boutons (toggle, couleur, texte, etc.).
Je cite intégralement votre message que je trouve très intéressant !
"juste faire taire le validator est particulièrement improductif"
Tout à fait d'accord et... d'où mon article ! Ceci-dit, *si* le
Validator bogue à ce niveau, je considèrerais bien mon code comme juste
et fonctionnel... Reprendre tout mes scripts ne me semble pas trop
envisageable :(
Bonjour, Mise à part le fait qu'il n'accepte que j'utilise la balise <marquee> (et je le comprends, je vais prendre le temps de faire un truc en JavaScript), il m'alerte pour un onclick où j'utilise le signe < (inférieur) comme étant un début de balise ?
<http://astrophoto.free.fr/calculs/index.htm> (ligne 222) Je ne parviens pas à trouver l'erreur qui doit être quelque part en amont si j'ai bien compris ?! ------------------------------------------------------------------ onclick=" pdate=document.forms[1]; if (pdate.mois.value<12) pdate.mois.value++; else {pdate.mois.value=1;pdate.annee.value++} calculjj();" ------------------------------------------------------------------ :(
Dans les documentations plus ou moins officielles, la valeur à attribuer à l'attribut onclick n'est à mon sens pas claire. Le texte est ambigu, mais les examples proposent exclusivement un appel de fonction (donc du code Javascript). A chaque fois que j'ai eu des soucis à ce niveau, en général sur un navigateur donné, j'avais tenté autre chose. J'ai donc définitivement pris la décision de systématiquement utiliser un appel de fonction. Ou de lier l'élément à un handler dans le code, ce qui est plus souple. Le validator me semble bogué, puisque soit il accepte la construction du onclick (raw javascript, qui plus est multi-ligne) et l'insère virtuellement entre <script></script>, soit il la warne (la bonne attitude, je pense). Concernant votre problème, et considérant que juste faire taire le validator est particulièrement improductif, voire pire quand vous changez la sémantique du code en remplaçant un '>' par un '==', je vous suggère de refactorer en ajoutant un bloc Javascript avec une fonction par onclick=. Ce bloc est le bon endroit pour gérer les gestions un peu blingbling ded boutons (toggle, couleur, texte, etc.).
Je cite intégralement votre message que je trouve très intéressant ! "juste faire taire le validator est particulièrement improductif" Tout à fait d'accord et... d'où mon article ! Ceci-dit, *si* le Validator bogue à ce niveau, je considèrerais bien mon code comme juste et fonctionnel... Reprendre tout mes scripts ne me semble pas trop envisageable :( Merci pour votre message encore une fois !! Thierry -- * * __*__ * * * * -----oOOo--- O ---oOOo------- * * http://astrophoto.free.fr * * * -------- oOOo oOOo ---------- *
Y.D.
Le 01/10/2019 à 17:54, Thierry Loiseau a écrit :
Thierry Loiseau wrote:
J'ai cherché encore dans le code et je ne trouve pas la raison de l'interprétation du "<"
/A priori/, il interprète systématiquement le chevron lorsque le JavaScript se trouve dans une balise html !`
Non, il l’interprète dans tout le fichier XHTML sauf si le < se trouve dans une section CDATA. Voir la spécification XHML 1 (http://www.la-grange.net/w3c/xhtml1/#diffs) au § 4.8.
J'ai fait un test en insérant quelque chose comme "... if (a<1) a=a; ..."
Pour contourner le problème et m’éviter la section CDATA, j’inverse bêtement le test : if (pdate.mois.value<12) --> if (12>pdate.mois.value) -- Y.D.
Le 01/10/2019 à 17:54, Thierry Loiseau a écrit :
Thierry Loiseau <loiseauthierry@free.fr> wrote:
J'ai cherché encore dans le code et je ne trouve pas la raison de
l'interprétation du "<"
/A priori/, il interprète systématiquement le chevron lorsque le
JavaScript se trouve dans une balise html !`
Non, il l’interprète dans tout le fichier XHTML sauf si le < se
trouve dans une section CDATA. Voir la spécification XHML 1
(http://www.la-grange.net/w3c/xhtml1/#diffs) au § 4.8.
J'ai fait un test en insérant quelque chose comme
"...
if (a<1) a=a;
..."
Pour contourner le problème et m’éviter la section CDATA,
j’inverse bêtement le test :
if (pdate.mois.value<12) -->
if (12>pdate.mois.value)
J'ai cherché encore dans le code et je ne trouve pas la raison de l'interprétation du "<"
/A priori/, il interprète systématiquement le chevron lorsque le JavaScript se trouve dans une balise html !`
Non, il l’interprète dans tout le fichier XHTML sauf si le < se trouve dans une section CDATA. Voir la spécification XHML 1 (http://www.la-grange.net/w3c/xhtml1/#diffs) au § 4.8.
J'ai fait un test en insérant quelque chose comme "... if (a<1) a=a; ..."
Pour contourner le problème et m’éviter la section CDATA, j’inverse bêtement le test : if (pdate.mois.value<12) --> if (12>pdate.mois.value) -- Y.D.
loiseauthierry
Y.D. wrote:
Pour contourner le problème et m'éviter la section CDATA, j'inverse bêtement le test : if (pdate.mois.value<12) --> if (12>pdate.mois.value)
Thierry Loiseau, dans le message <1of5xnn.1ez6bel1uibyheN%, a écrit :
Pas bêtement bête çà !!
À l'intérieur d'un attribut, > est aussi interdit que <.
Y.D.
Le 09/10/2019 à 10:59, Nicolas George a écrit :
À l'intérieur d'un attribut, > est aussi interdit que <.
Ah ? Il faudra prévenir le validator qui l’accepte pourtant sans broncher ;-) Le seul cas où > doit être banni c’est quand il pourrait être confondu avec la fin d’une section CDATA introduite par <![CDATA[ donc à la fin de la chaîne ]]> Je donne ma source : https://www.w3.org/TR/REC-xml/#syntax Y.D.
Le 09/10/2019 à 10:59, Nicolas George a écrit :
À l'intérieur d'un attribut, > est aussi interdit que <.
Ah ? Il faudra prévenir le validator qui l’accepte pourtant
sans broncher ;-)
Le seul cas où > doit être banni c’est quand il pourrait être
confondu avec la fin d’une section CDATA introduite par
<![CDATA[ donc à la fin de la chaîne ]]>
Je donne ma source : https://www.w3.org/TR/REC-xml/#syntax
À l'intérieur d'un attribut, > est aussi interdit que <.
Ah ? Il faudra prévenir le validator qui l’accepte pourtant sans broncher ;-) Le seul cas où > doit être banni c’est quand il pourrait être confondu avec la fin d’une section CDATA introduite par <![CDATA[ donc à la fin de la chaîne ]]> Je donne ma source : https://www.w3.org/TR/REC-xml/#syntax Y.D.