By: Lox
Date: 2010-03-03
Time: 06:33
|
Problème d'affichage conditionnel
Salut,
Voici mon code html:
<tr>
<td nowrap="nowrap" >
[Transactions.GetFormated(date);block=tr]
</td>
<td nowrap="nowrap" >
[Transactions.GetFormated(amount)]
</td>
<td align="left" nowrap="nowrap" >
<a href="page/[Transactions.transaction_id]" onclick="" class="action unjustified">A justifier: [onshow;Transactions.justified;if [val]==1;then ''; else [Transactions.GetFormated(amount2justify)];magnet=a;]</a>
</td>
</tr>
Transactions est un bloc tbs pointant vers un tableau d'objects. lorsque Transactions.justified est égal à 1 je ne veux pas que le lien dans la dernière cellule soit affiché. Mais ça ne fonctionne pas comme je l'ai fais.
Merci.
|
By: Skrol29
Date: 2010-03-04
Time: 01:03
|
Re: Problème d'affichage conditionnel
Salut Lox,
C'est ton champ onshow qui ne va pas.
Il faudrait plutôt écrire:
<tr>
<td nowrap="nowrap" > [Transactions.GetFormated(date);block=tr] </td>
<td nowrap="nowrap" > [Transactions.GetFormated(amount)] </td>
<td align="left" nowrap="nowrap" >
<a href="page/[Transactions.transaction_id]" onclick="" class="action unjustified">
A justifier: [Transactions.justified;if [val]==1;then ''; else [Transactions.GetFormated(amount2justify)];magnet=a;]
</a>
</td>
</tr>
|
Mais comme c'est un peu entortillé, tu peux aussi utiliser des blocs conditionnels:
<tr>
<td nowrap="nowrap" > [Transactions.GetFormated(date);block=tr;when [Transactions.justified]=1] </td>
<td nowrap="nowrap" > [Transactions.GetFormated(amount)] </td>
<td align="left" nowrap="nowrap" >
A justifier:
</td>
</tr>
<tr>
<td nowrap="nowrap" > [Transactions.GetFormated(date);block=tr;default] </td>
<td nowrap="nowrap" > [Transactions.GetFormated(amount)] </td>
<td align="left" nowrap="nowrap" >
<a href="page/[Transactions.transaction_id]" onclick="" class="action unjustified">
A justifier: [Transactions.GetFormated(amount2justify)]
</a>
</td>
</tr>
|
|
By: Lox
Date: 2010-03-04
Time: 03:53
|
Re: Problème d'affichage conditionnel
Salut!
Étrangement ta première méthode ne fonctionne pas (c'est pour cela que j'en étais arrivé à utiliser onshow) .J'obtient le code suivant:
A justifier: [Transactions.justified;if [val]==1;then ''; else -718 202 XPF;magnet=a;] |
Transactions.GetFormated(amount2justify) est mergé et non [Transactions.justified], étrange?
La méthode 2 fonctionne mais, je n'aime pas a maintenir deux lignes de mon tableau alors qu'il n'y a qu'une petit changement dans une cellule...
|
By: Lox
Date: 2010-03-04
Time: 04:01
|
Re: Problème d'affichage conditionnel
Ah oui j'oubliais, je vais aussi avoir des autre liens dan cette cellule fonctionnant sur le même principe mais par rapport a un autre champs.
Donc si je pouvais arriver a faire fonctionner la première méthode....
Merci.
|
By: Lox
Date: 2010-03-04
Time: 04:34
|
Re: Problème d'affichage conditionnel
Donc, voilà ou j'en suis pour mon champs:
<td align="left" nowrap="nowrap" >
<span><small><a href="Accounts/Transaction/Index/[Transactions.transaction_id]" onclick="" class="action justified" title="L'opération est correctement justifiée. Cliquez ici pour en voir les détails" >Justifée [Transactions.justified; if [val]==0;then '';else '1'; magnet=span]</a></small></span>
<span><small><a href="Accounts/Transaction/Index/[Transactions.transaction_id]" onclick="" class="action unjustified" title="La transaction n'est pas justifiée. Cliquez ici pour en voir les détails" >A justifier: [Transactions.justified; if [val]==1;then '';else '1'; magnet=span] [Transactions.GetFormated(amount2justify)]</a></small></span>
<span><small><a href="Accounts/Transaction/Index/[Transactions.transaction_id]" onclick="" class="action justified" title="La transaction est correctement catégorisée. Cliquez ici pour en voir les détails" >Catégoriséé [Transactions.categorized; if [val]==0;then '';else '1'; magnet=span]</a></small></span>
<span><small><a href="Accounts/Transaction/Index/[Transactions.transaction_id]" onclick="" class="action unjustified" title="La transaction n'est pas catégorisée. Cliquez ici pour en voir les détails" >A catégoriser: [Transactions.categorized; if [val]==1;then '';else '1'; magnet=span] [Transactions.GetFormated(amount2categorize)]</a></small></span>
</td>
|
Cela fonctionne très bien. Mais je me retrouve avec le '1' résultant de la première condition. ( if [val]==0;then '';else '1';)
Comment un champs tbs peut il servir "d'interrupteur" à un magnet sans que rien ne soit affiché?
|
By: Skrol29
Date: 2010-03-06
Time: 00:42
|
Re: Problème d'affichage conditionnel
>Comment un champs tbs peut il servir "d'interrupteur" à un magnet
> sans que rien ne soit affiché?
Tu peux utiliser le paramètre "ope=minv" qui sert justement à ça.
Sinon il existe une autre astuce : "if [val]==0;then '';else ' ';"
un espace est utilisé pour afficher rien du tout.
La méthode 1 ne fonctionne pas à cause d'une sorte de bug connu mais difficile à corriger : l'utilisation de "magnet" casse la recherche de champs TBS imbriqués.
|
|
Posting in progress.
Please wait...
|