Visualizzazione dei risultati da 1 a 6 su 6

Discussione: [xsl] OR

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    4

    [xsl] OR

    come posso inserire un OR in un xsl:if?

    mi spiego meglio. il mio codice è il seguente:

    <xsl:for-each select="variabile">
    <xsl:if test="(@nome='A')|(@nome='B')">
    <xsl:value-of select=".">
    </xsl:if>


    vorrei che venisse stampato il valore di "variabile" solo se l'attributo "nome" è A oppure B.
    il codice che ho scritto però non funziona.
    avete suggerimenti?

    VKIARA

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    L'OR logico si fa con la doppia barra || (e la comparazione si fa con il doppio uguale ==):

    <xsl:if test="(@nome=='A')||(@nome=='B')">


    Ciao
    Michele
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    4
    purtroppo non funziona.

    ho provato a separare le due espressioni in questo modo:
    <xsl:for-each select="variabile">
    <xsl:if test="@nome='A'">
    <xsl:value-of select=".">
    </xsl:if>
    </xsl:for-each>

    <xsl:for-each select="variabile">
    <xsl:if test="@nome='B'">
    <xsl:value-of select=".">
    </xsl:if>
    </xsl:for-each>

    e così funziona, quindi deduco che l'uguale vada singolo e non doppio.
    trovo però che sia più elegante inserire il tutto in un'unico ciclo "for-each". è fattibile?

    VKIARA

  4. #4
    Utente di HTML.it L'avatar di Toeke
    Registrato dal
    Aug 2002
    Messaggi
    348

    Re: [xsl] OR

    Originariamente inviato da vkiara
    come posso inserire un OR in un xsl:if?

    mi spiego meglio. il mio codice è il seguente:

    <xsl:for-each select="variabile">
    <xsl:if test="(@nome='A')|(@nome='B')">
    <xsl:value-of select=".">
    </xsl:if>


    vorrei che venisse stampato il valore di "variabile" solo se l'attributo "nome" è A oppure B.
    il codice che ho scritto però non funziona.
    avete suggerimenti?

    VKIARA
    Scusa ma se metti in questa maniera non funziona?

    [code]
    <xsl:for-each select="variabile">
    <xsl:if test="(@nome='A')or(@nome='B')">
    <xsl:value-of select=".">
    </xsl:if>
    [code]

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    4
    così funziona!!!

    pensavo si facesse in modo diverso, invece bastava inserire la parola "or"!
    grazie.

    vkiara

  6. #6
    Utente di HTML.it L'avatar di Toeke
    Registrato dal
    Aug 2002
    Messaggi
    348
    Originariamente inviato da vkiara
    così funziona!!!

    pensavo si facesse in modo diverso, invece bastava inserire la parola "or"!
    grazie.

    vkiara
    Prego

    Siamo qui per questo



Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.