By: Sylvio
Date: 2005-05-06
Time: 16:11
|
Boucle imbriquées et instructions Javascript
Bonjour,
je souhaite utiliser plusieurs instructions javascript dans une boucle a l'aide de TBS. Le problème c'est que je doit les séparer par des ";", qui est un caractère spécial dans TBS. Y a-t-il une solution??
Voici mon code :
[blk_sous_menu;block=td;]
[var._tpl.url_rubrique;if [blk_sous_menu.lien_rub]=[val];then '[blk_sous_menu.nom_rub]';else [blk_sous_menu.ouverture_rub;if [val]=1;then '<a href="[blk_sous_menu.lien_rub]" class="sous_menu_haut" target="_blank" onClick="popup('[blk_sous_menu.lien_rub]','[blk_sous_menu.abreg_rub]', [blk_sous_menu.width_rub], [blk_sous_menu.height_rub], 0, 0, 'scrollbars=yes,resizable=yes, toolbar=no,directories=0, location=no,status=no'); return false;">[blk_sous_menu.nom_rub]</a>';else '<a href="[blk_sous_menu.lien_rub]" class="sous_menu_haut">[blk_sous_menu.nom_rub]</a>'] |
Merci d'avance
|
By: Skrol29
Date: 2005-05-06
Time: 16:33
|
Re: Boucle imbriquées et instructions Javascript
Salut Sylvio,
Le point-virgule (;) est un caractère spécial pour les champs TBS, mais il est ignoré dans les valeur de paramètre encadrées par des quotes (').
Exemple :
[var.test;if [val]=';';then 'point-virgule']
Mais j'ai remarqué que ta définition de champ, tu n'as pas protégé les quotes (') à l'intérieur des chaînes en les doublant, ce qui fait que ta chaîne texte est rompue avant.
Par exemple, tu as écris :
then '<a ... onClick="popup(...,'scrollbars=yes,...'); return false;">...</a>' |
Alors que tu aurais dû écrire :
then '<a ... onClick="popup(...,''scrollbars=yes,...''); return false;">...</a>' |
|
By: Sylvio
Date: 2005-05-06
Time: 18:43
|
Re: Boucle imbriquées et instructions Javascript
Ok je vais essayer
|
By: Sylvio
Date: 2005-05-06
Time: 19:12
|
Re: Boucle imbriquées et instructions Javascript
Ok pour les quotes, mais ca me coupe quand meme ma chaine au niveau des ';'
[blk_sous_menu.ouverture_rub;if [val]=1;then '<a href="[blk_sous_menu.lien_rub]" class="sous_menu_haut" target="_blank" onClick="popup(''[blk_sous_menu.lien_rub]'',''[blk_sous_menu.abreg_rub]'', [blk_sous_menu.width_rub], [blk_sous_menu.height_rub], 0, 0, ''scrollbars=yes,resizable=yes, toolbar=no,directories=0, location=no,status=no''); return false">[blk_sous_menu.nom_rub;htmlconv=no]</a>';else '...']
|
j'obtiens le code suivant :
<a href="reallon-hiver-ski_alpin.html" class="sous_menu_haut" target="_blank" onClick="popup('reallon-hiver-ski_alpin.html','ski_alpin', 400, 300, 0, 0, 'scrollbars=yes,resizable=yes, toolbar=no,directories=0, location=no,status=no')
|
Merci d'avoir répondu si rapidement!!
|
By: Skrol29
Date: 2005-05-07
Time: 21:19
|
Re: Boucle imbriquées et instructions Javascript
J'ai fait le test avec TBS (2.02.2), (2.01) et (2.00) et ça marche impec pour moi. J'ai copié ton morceau de modèle à l'identique.
Tu as bien la dernière version de la 2.02 ?
A oui, il faut aussi que tes champs "abreg_rub" et "lien_rub" ne contiennent pas de (') mais je pense que c'est le cas.
|
By: Sylvio
Date: 2005-05-11
Time: 09:23
|
Re: Boucle imbriquées et instructions Javascript
Oui j'ai bien la derniere version de TBS, les champs "abreg_rub" et "lien_rub" ne contiennent pas de (').
En fait ca coupe toujours la chaine au premier ';' qui se trouve dans le champ onClick.
|
|
Posting in progress.
Please wait...
|