Les balises commutateurs / Switch tags : <b:switch>, <b:case>, <b:default>

Blogger - Les balises commutateurs <b:switch> <b:case> <b:default>

Les balises commutateurs <b:switch>, <b:case> et <b:default> sont des instructions qui permettent d’exécuter ou non un bloc de codes.
Les balises commutateurs se comportent comme les balises conditionnelles <b:if>, <b:elseif> et <b:else>.



Les syntaxes

<b:switch> + <b:case>

<b:switch var='EXPRESSION'>

  <b:case value='VALUE1'/>

    <!-- Vrai si la valeur1 est égale au résultat de l'expression -->

  <b:case value='VALUE2'/>

    <!-- Vrai si tous les cas précédents ne remplissent pas les conditions requises -->
    <!-- Et vrai si la valeur2 est égale au résultat de l'expression -->

</b:switch>

<b:switch> + <b:case> + <b:default>

<b:switch var='EXPRESSION'>

  <b:case value='VALUE1'/>

    <!-- Vrai si la valeur1 est égale au résultat de l'expression -->

  <b:case value='VALUE2'/>

    <!-- Vrai si tous les cas précédents ne remplissent pas les conditions requises -->
    <!-- Et vrai si la valeur2 est égale au résultat de l'expression -->

  <b:default/>

    <!-- Vrai si tous les cas précédents ne remplissent pas les conditions requises -->

</b:switch>
  • Les balises <b:switch>, <b:case> et <b:default> travaillent dans l'ensemble du code XML, excepté à l'intérieur d'un balisage <![CDATA[.

  • Plusieurs balises <b:switch> peuvent s'imbriquer.

  • Les balises <b:case> et <b:default> doivent être imbriquées dans une balise <b:switch>.

  • L'usage de la balise <b:case> est requise et la balise <b:default> n'est pas obligatoire.

  • La balise <b:case> peut être utilisée plusieurs fois dans une balise <b:switch>.

  • La balise <b:default> ne peut être utilisée qu'une seule fois dans une balise <b:switch>. Si <b:switch> contient une ou plusieurs balises <b:case>, la balise <b:default> devra être la dernière balise à être mentionnée dans le commutateur.



Les attributs des balises

Les balises <b:switch> et <b:case> doivent être dotées d'un attribut.
La balise <b:default> ne requiert aucun attribut. Elle n'est exécutée que lorsque tous les commutateurs précédents ne remplissent pas les conditions requises.

<b:switch var='EXPRESSION'>
  <b:case value='VALUE'/>
  
  <b:default/>
  
</b:switch>

Attributs Description Classification Préfixe « expr: » Implantation
var

La valeur du commutateur

Cet attribut s'intègre dans la balise <b:switch>.

La valeur attendue peut être une donnée ou une expression Blogger.

Les types de valeurs autorisés sont string (+héritiers), number et boolean.

Classification : XML Blogger Expression Préfixe « expr: » : Autorisé Implantation : Obligatoire
value

La valeur du cas

Cet attribut s'intègre dans les balises <b:case>.

La valeur du cas est comparée à la valeur du commutateur.

Les types de valeurs autorisés sont string (+héritiers), number et boolean.

La valeur peut être également une expression Blogger si l'attribut est précédé du préfixe expr:. La valeur du résultat de l'expression devra être l'un des 3 types mentionnés ci-dessus.

Classification : HTML classic Préfixe « expr: » : Autorisé Implantation : Obligatoire


Quelques exemples

Avec une donnée booléenne

<b:switch var='data:view.isPost'>

  <b:case value='true'/>

    <!-- Vrai si la valeur de data:view.isPost est true -->

  <b:default/>

    <!-- Vrai si le cas précédent ne rempli pas la condition requise -->

</b:switch>

Avec une donnée string

<b:switch var='data:view.type'>

  <b:case value='item'/>

    <!-- Vrai si la valeur de data:view.type est "item" -->

  <b:case value='feed'/>

    <!-- Vrai si le cas précédent ne rempli pas la condition requise et vrai si la valeur de data:view.type est "feed" -->

  <b:default/>

    <!-- Vrai si les cas précédents ne remplissent pas les conditions requises -->

</b:switch>

Avec une donnée numérique et une expression Blogger

<b:switch var='data:posts.length + 10'>

  <b:case value='0'/>

    <!-- Vrai si la valeur de l'expression est égale à 0 -->

  <b:case expr:value='10 - 1'/>

    <!-- Vrai si le cas précédent ne rempli pas la condition requise et vrai si l'expression est égale à l'opération 10 - 1 -->

  <b:default/>

    <!-- Vrai si les cas précédents ne remplissent pas les conditions requises -->

</b:switch>


Spotlight

Populaires cette semaine