Lär dig hur du utför XSL-omvandlingar via server i Dreamweaver. Skapa XSLT-sidor och konvertera HTML till XSLT-sidor.

Obs!

Användargränssnittet i Dreamweaver CC och senare har förenklats. Det kan därför hända att du inte hittar en del av alternativen i den här artikeln i Dreamweaver CC och senare. Mer information finns i den här artikeln.

Arbetsflöde för att utföra XSL-omvandlingar via server

Du kan utföra XSL-omvandlingar via servern på själva servern. Läs om XSL-omvandlingar via server och klient och om hur du använder XML och XSL med webbsidor innan du bygger sidor som visar XML-data.

Obs!

Din server måste konfigureras på rätt sätt för att utföra serveromvandlingar. Kontakta serveradministratören för mer information.

Det allmänna arbetsflödet för att utföra XSL-omvandlingar via servern är följande (varje steg beskrivs i andra avsnitt):

1. Konfigurera en Dreamweaver-plats.

2. Välj en serverteknik och konfigurera en programserver.

3. Testa programservern.

Du kan t.ex. skapa en sida som kräver bearbetning och se till att programservern bearbetar sidan.

4. Skapa ett XSLT-avsnitt eller en XSLT-sida eller konvertera en HTML-sida till en XSLT-sida.

  • Skapa ett XSLT-avsnitt eller en hel XSLT-sida på din Dreamweaver-plats.

  • Konvertera en befintlig HTML-sida till en hel XSLT-sida.

5. Koppla en XML-datakälla till sidan.

6. Visa XML-data genom att koppla dessa data till XSLT-avsnittet eller till hela XSLT-sidan.

7. Om de stämmer lägger du till ett XSLT-objekt för en upprepad region i tabellen eller tabellraden som innehåller platshållarna för XML-data.

8. Infoga referenser.

  • Använd serverfunktionen XSL-omvandling för att infoga en referens till XSLT-avsnittet på den dynamiska sidan.

  • Om du vill infoga en referens till hela XSLT-sidan på den dynamiska sidan tar du bort all HTML-kod från en dynamisk sida och använder sedan serverfunktionen XML-omvandling.

9. Lägg upp sidan och avsnittet.

Lägg upp både den dynamiska sidan och XSLT-avsnittet (eller hela XSLT-sidan) i programservern. Om du använder en lokal XML-fil måste du lägga upp den också.

10. Visa den dynamiska sidan i en webbläsare.

När du gör det omvandlar programservern XML-data, infogar dem på den dynamiska sidan och visar dem i webbläsaren.

Skapa en XSLT-sida

Du kan skapa XSLT-sidor som gör att du kan visa XML-data på webbsidor. Du kan antingen skapa en hel XSLT-sida, en XSLT-sida som innehåller en <body>-tagg och en <head>-tagg, eller så kan du skapa ett XSLT-avsnitt. När du skapar ett XSLT-avsnitt kan du skapa en oberoende fil som inte innehåller någon body- eller head-tagg, ett enkelt kodavsnitt som senare infogas på en dynamisk sida.

Obs!

Om du börjar med en befintlig XSLT-sida måste du koppla en XML-datakälla till den.

  1. Klicka på Arkiv > Nytt.
  2. I kategorin Tom sida i dialogrutan Nytt dokument väljer du något av följande i kolumnen Sidtyp:
    • Välj XSLT (Hel sida) för att skapa en hel XSLT-sida.

    • Välj XSLT (Fragment) för att skapa ett XSLT-avsnitt.

  3. Klicka på Skapa och gör något av följande i dialogrutan Hitta XML-källa:
    • Välj Koppla en lokal fil, klicka på knappen Bläddra, bläddra till en lokal XML-fil på datorn och klicka på OK.
    • Välj Koppla en fjärrfil, ange URL-adressen till en XML-fil på internet (t.ex. en som kommer från ett RSS-inlägg) och klicka på OK.

    Obs!

    Om du klickar på knappen Avbryt skapas en ny XSLT-sida utan någon kopplad XML-datakälla.

    I panelen Bindningar visas schemat för XML-datakällan

    Panelen Bindningar
    Panelen Bindningar

    Följande tabell innehåller en förklaring av de olika elementen som kan visas i schemat:

    Element

    Representerar

    Detaljer

    <>

    Obligatoriskt icke-upprepat XML-element

    Ett element som visas exakt en gång i sin överordnade nod

    <>+

    Upprepat XML-element

    Ett element som visas en eller flera gånger i sin överordnade nod

    <>+

    Valfritt XML-element

    Ett element som visas noll eller flera gånger i sin överordnade nod

    Elementnod i fet stil

    Element för aktuellt sammanhang

    Ofta det upprepade elementet när markören finns inuti en upprepad region

    @

    XML-attribut

     

     

  4. Spara den nya sidan (Arkiv > Spara) med tillägget .xsl eller .xslt (.xsl är standard).

Konvertera HTML-sidor till XSLT-sidor

Du kan även konvertera befintliga HTML-sidor till XSLT-sidor. Om du t.ex. har en fördesignad statisk sida som du vill lägga till XML-data på kan du konvertera sidan till en XSLT-sida istället för att skapa en XSLT-sida och designa om sidan från början.

  1. Öppna HTML-sidan som du vill konvertera.
  2. Välj Fil > Konvertera > XSLT 1.0.

    En kopia av sidan öppnas i dokumentfönstret. Den nya sidan är en XSL-formatmall som sparats med tillägget .xsl.

Koppla XML-datakällor

Om du börjar med en befintlig XSLT-sida eller om du inte kopplar en XML-datakälla när du skapar en ny XSLT-sida med Dreamweaver måste du koppla en XML-datakälla med panelen Bindningar.

  1. I panelen Bindningar (Fönster > Bindningar) klickar du på XML-länken.
    Klicka på XML i panelen Bindningar
    Klicka på XML i panelen Bindningar

    Obs!

    Du kan även klicka på länken Källa i det övre högra hörnet i panelen Bindningar för att lägga till en XML-datakälla.

  2. Gör något av följande:
    • Välj Koppla en lokal fil, klicka på knappen Bläddra, bläddra till en lokal XML-fil på datorn och klicka på OK.

    • Välj Koppla en fjärrfil och ange URL-adressen till en XML-fil på internet (t.ex. en som kommer från ett RSS-inlägg).

  3. Stäng dialogrutan Sök XML-källa genom att klicka på OK.

    I panelen Bindningar visas schemat för XML-datakällan.

Visa XML-data på XSLT-sidor

När du har skapat en XSLT-sida och kopplat en XML-datakälla kan du koppla data till sidan. Om du vill göra det lägger du till en platshållare för XML-data på sidan och använder sedan XPaths uttrycksbyggare eller egenskapskontrollen för att formatera markerade data som kommer att visas på sidan.

  1. Öppna en XSLT-sida med en kopplad XML-datakälla.
  2. (Valfritt) Välj Infoga > Tabell för att lägga till en tabell på sidan. Med en tabell kan du ordna XML-data.

    Obs!

    I de flesta fall använder du XSLT-objektet för den upprepade regionen för att visa upprepade XML-element på en sida. I detta fall kanske du vill skapa en enkelradig tabell med en eller flera kolumner eller en tvåradig tabell om du vill inkludera en tabellrubrik.

  3. I panelen Bindningar väljer du ett XML-element och drar det till den plats på sidan där du vill infoga data.
    Välj ett XML-element i panelen Bindningar
    Välj ett XML-element i panelen Bindningar

    En platshållare för XML-data visas på sidan. Platshållaren är markerad och inom klammerparenteser. Den använder syntaxen för XPath (XML Path-språk) för att beskriva den hierarkiska strukturen för XML-schemat. Om du t.ex. drar det underordnade elementet rubrik till sidan och det elementet har de överordnade elementen rss, kanal och objekt kommer syntaxen för den dynamiska platshållaren att bli {rss/kanal/objekt/rubrik}.

    Dubbelklicka på platshållaren för XML-data på sidan för att öppna XPaths uttrycksbyggare. Med XPaths uttrycksbyggare kan du formatera markerade data eller markera andra objekt från XML-schemat.

  4. (Valfritt) Använd format på XML-data genom att markera en platshållare för XML-data och använda format på dessa precis som på andra typer av innehåll med hjälp av egenskapskontrollen eller panelen CSS-format. Du kan även använda formatmallar för designläge för att använda format på XSLT-avsnitt. Alla dessa metoder har sina fördelar och begränsningar.
  5. Förhandsgranska arbetet i en webbläsare (Arkiv > Förhandsvisa i webbläsare)

    Obs!

    När du förhandsgranskar arbetet med Förhandsvisa i webbläsare utför Dreamweaver en intern XSL-omvandling utan en programserver.

Visa upprepade XML-element

Med XSLT-objektet för den upprepade regionen kan du visa upprepade element från en XML-datakälla på en webbsida. Om du t.ex. visar artikelrubriker och beskrivningar från ett nyhetsflöde och det nyhetsflödet innehåller mellan 10 och 20 artiklar är förmodligen varje rubrik och beskrivning i XML-filen ett underordnat element till ett upprepat element.

En region som innehåller en platshållare för XML-data kan ändras till en upprepad region. De vanligaste regionerna är tabeller, tabellrader eller serier med tabellrader.

  1. I designvyn väljer du en region som innehåller en eller flera platshållare för XML-data.

    Markeringen kan innehålla vad som helst, till exempel en tabell, en tabellrad eller till och med ett textstycke.

    Designvyn
    Designvyn

    Obs!

    Om du vill markera en region exakt på sidan kan du använda taggväljaren längst ned i det vänstra hörnet i dokumentfönstret. Om en region t.ex. är en tabell klickar du inuti tabellen på sidan och klickar sedan på taggen i taggväljaren.

  2. Gör något av följande
    • Välj Infoga > XSLT-objekt > Upprepad region.

    • Klicka på knappen Upprepande region i kategorin XSLT på panelen Infoga.

  3. Välj det upprepade elementet som visas med ett litet plustecken i XPaths uttrycksbyggare.
    XPaths uttrycksbyggare
    XPaths uttrycksbyggare

  4. Klicka på OK.

    I dokumentfönstret visas en tunn, streckad grå kontur runt den upprepade regionen. När du förhandsgranskar arbetet i en webbläsare (Arkiv > Förhandsgranska i webbläsare) försvinner den grå konturen och markeringen utökas så att den visar de angivna upprepade elementen i XML-filen.

    När du lägger till XSLT-objektet för den upprepade regionen på sidan kortas platshållaren för XML-data i dokumentfönstret av. Detta beror på att Dreamweaver klipper av XPath för platshållaren för XML-data så att den motsvarar sökvägen till det upprepade elementet.

Ange egenskaper för upprepade regioner (XSL)

I egenskapskontrollen kan du välja en annan XML-nod för att skapa den upprepade regionen.

  1. I rutan Markera anger du en ny nod och trycker sedan på blixtikonen och väljer noden från XML-schematrädet som visas.

Redigera ett XSLT-objekt för en upprepad region

När du har lagt till ett XSLT-objekt för en upprepad region kan du redigera det med egenskapskontrollen.

  1. Markera objektet genom att klicka på det grå strecket som omger den upprepade regionen.
  2. Klicka på den dynamiska ikonen bredvid textfältet Markera i egenskapskontrollen (Fönster > Egenskaper).
  3. Gör ändringarna i XPaths uttrycksbyggare och klicka på OK.

Infoga XSLT-avsnitt på dynamiska sidor

När du har skapat ett XSLT-avsnitt kan du infoga det på en dynamisk webbsida med serverfunktionen XSL-omvandling. När du lägger till serverfunktionen på sidan och visar den i en webbläsare utför en programserver en omvandling som visar XML-data från det markerade XSLT-avsnittet. Dreamweaver stöder XSL-omvandlingar för ColdFusion-, ASP- och PHP-sidor.

Obs!

Om du vill infoga innehållet för en hel XSLT-sida på en dynamisk sida är proceduren exakt densamma. Innan du använder serverfunktionen XSL-omvandling för att infoga hela XSLT-sidan tar du bort all HTML-kod från den dynamiska sidan.

  1. Öppna en befintlig ColdFusion-, ASP- eller PHP-sida.
  2. I designvyn placerar du insättningspunkten på den plats där du vill infoga XSLT-avsnittet.

    Obs!

    När du infogar XSLT-avsnittet bör du alltid klicka på knappen Visa kod och design efter att du har placerat markören på sidan så att du kan vara säker på att markören är på rätt plats. Om den inte är det måste du klicka någon annanstans i kodvyn för att placera insättningspunkten där du vill ha den.

  3. Klicka på plustecknet (+) i panelen Serverfunktioner (Fönster > Serverfunktioner) och välj sedan XSL-omvandling.
    Panelen Serverfunktioner
    Panelen Serverfunktioner

  4. I dialogrutan XSL-omvandling klickar du på knappen Bläddra och bläddrar till ett XSLT-avsnitt eller en hel XSLT-sida.

    Dreamweaver fyller i nästa textfält med filens sökväg eller URL-adressen till XML-filen som är kopplad till det angivna avsnittet. Om du vill ändra den klickar du på knappen Bläddra och bläddrar till en annan fil.

  5. (Valfritt) Klicka på plustecknet (+) om du vill lägga till en XSLT-parameter.
  6. Klicka på OK för att infoga en referens till XSLT-avsnittet på sidan. Det går inte att redigera avsnittet. Du kan dubbelklicka på avsnittet för att öppna dess källfil och redigera den.

    Mappen includes/MM_XSLTransform/ skapas också i platsens rotmapp som innehåller en biblioteksfil för körtid. Programservern använder funktionerna som definierats i den här filen för att utföra omvandlingen.

  7. Överför den dynamiska sidan till servern (Plats > Skicka) och klicka på Ja för att inkludera beroende filer. Filen som innehåller XSLT-avsnittet, XML-filen som innehåller dina data och den biblioteksfil för körtid som skapats måste alla finnas på servern för att sidan ska visas ordentligt. (Om du valde en fjärransluten XML-fil som datakälla måste den filen ligga någon annanstans på internet.)

Ta bort XSLT-avsnitt från dynamiska sidor

Du kan ta bort ett XSLT-avsnitt från en sida genom att ta bort serverfunktionen XSL-omvandling som användes för att infoga avsnittet. När du tar bort serverfunktionen tas endast XSLT-avsnittet bort, inte de tillhörande XML-, XSLT-filerna eller biblioteksfilerna för körtid.

  1. I panelen Serverfunktioner (Fönster > Serverfunktioner) väljer du serverfunktionen XSL-omvandling som du vill ta bort.
  2. Klicka på minustecknet (-).

    Obs!

    Du bör alltid ta bort fjärranslutna serverfunktioner på det här sättet. Om du tar bort den skapade koden manuellt tar du endast bort serverfunktionen till viss del, trots att serverfunktionen kan försvinna från panelen Serverfunktioner.

Redigera serverfunktionen XSL-omvandling

När du har lagt till ett XSLT-avsnitt på en dynamisk webbsida kan du redigera serverfunktionen XSL-omvandling när du vill.

  1. I panelen Serverfunktioner (Fönster > Serverfunktioner) dubbelklickar du på serverfunktionen XSL-omvandling som du vill redigera.
  2. Gör de ändringar du vill och klicka på OK.

Du kan skapa en dynamisk länk på en XSLT-sida som länkar till en viss URL-adress när användaren klickar på ett visst ord eller en grupp med ord från dina XML-data. Fullständiga anvisningar finns i Dreamweaver-resurserna på www.adobe.com/go/dw_documentation_se.

Använd format på XSLT-avsnitt

När du skapar en hel XSLT-sida (d.v.s. en XSLT-sida som innehåller <body>- och <head>-taggar) kan du visa XML-data på sidan och sedan formatera data precis som vilket annat innehåll som helst med egenskapskontrollen eller panelen CSS-format. När du skapar ett XSLT-avsnitt som ska infogas på en dynamisk sida (t.ex. ett avsnitt som ska infogas på en ASP-, PHP- eller Cold Fusion-sida) blir dock återgivningen av formaten i avsnittet och på den dynamiska sidan lite mer komplicerad. När du arbetar på ett XSLT-avsnitt separat från den dynamiska sidan är det viktigt att komma ihåg att avsnittet är avsett att användas med den dynamiska sidan och att utdata från XSLT-avsnittet slutligen finns någonstans i <body>-taggarna på den dynamiska sidan. Med detta arbetsflöde är det viktigt att se till att du inte inkluderar <head>-element (t.ex. som formatdefinitioner eller länkar till externa formatmallar) i XSLT-avsnitt. Om du gör det placerar programservern dessa element i <body>-avsnittet på den dynamiska sidan och skapar därmed ogiltig kod.

Du kanske t.ex. vill skapa ett XSLT-avsnitt som ska infogas på en dynamisk sida och formatera avsnittet med hjälp av samma externa formatmall som den dynamiska sidan. Om du kopplar samma formatmall till avsnittet kommer den resulterande HTML-sidan att innehålla en dubbel länk till formatmallen (en i <head>-avsnittet på den dynamiska sidan och en annan i <body>-avsnittet på sidan där innehållet i XSLT-avsnittet visas). Istället för den här metoden bör du använda formatmallar för designläge för att hänvisa till den externa formatmallen.

När du formaterar innehållet i XSLT-avsnitt använder du följande arbetsflöde:

  • Koppla först en extern formatmall till den dynamiska sidan. (Detta är den bästa metoden för att använda format på innehåll på en webbsida).

  • Koppla sedan samma externa formatmall till XSLT-avsnittet som en formatmall för designläge. Som namnet antyder fungerar endast formatmallar för designläge i designvyn i Dreamweaver.

    När du har utfört dessa två steg kan du skapa nya format i XSLT-avsnittet med samma formatmall som du har kopplat till den dynamiska sidan. HTML-utdata blir renare (eftersom referensen till formatmallen endast är giltig när du arbetar i Dreamweaver) och avsnittet kommer fortfarande att visa rätt format i designvyn. Dessutom kommer alla dina format att användas på både avsnittet och den dynamiska sidan när du visar den dynamiska sidan i designvyn eller förhandsgranskar den dynamiska sidan i en webbläsare.

Obs!

Om du förhandsgranskar XSLT-avsnittet i en webbläsare visar inte webbläsaren formaten. Istället bör du förhandsgranska den dynamiska sidan i webbläsaren för att se XSLT-avsnittet i sammanhanget för den dynamiska sidan.

Använda parametrar med XSL-omvandlingar

Du kan ange parametrar för XSL-omvandlingen när du lägger till serverfunktionen XSL-omvandling på en webbsida. En parameter styr hur XML-data bearbetas och visas. Du kan t.ex. använda en parameter för att identifiera och ange en viss artikel från ett nyhetsflöde. När sidan läses i en webbläsare visas endast artikeln som du angav med parametern.

Lägga till en XSLT-parameter i en XSL-omvandling

  1. Öppna dialogrutan XSL-omvandling. Du kan göra det genom att dubbelklicka på serverfunktionen XSL-omvandling i panelen Serverfunktioner (Fönster > Serverfunktioner) eller genom att lägga till en ny XSL-omvandling.
  2. I dialogrutan XSL-omvandling klickar du på plustecknet (+) bredvid XSLT-parametrar.
    Dialogrutan XSL-omvandling
    Dialogrutan XSL-omvandling

  3. I dialogrutan Lägg till parametrar anger du ett namn på parametern i rutan Namn. Namnet får bara innehålla alfanumeriska tecken. Det får inte innehålla blanksteg.
  4. Gör något av följande:
    • Om du vill använda ett statiskt värde anger du det i rutan Värde.

    • Om du vill använda ett dynamiskt värde klickar du på den dynamiska ikonen bredvid rutan Värde, fyller i dialogrutan Dynamiska data och klickar på OK. Om du vill ha mer information kan du klicka på knappen Hjälp i dialogrutan Dynamiska data.

  5. I rutan Standardvärde anger du värdet som du vill att parametern ska använda om sidan inte får något körtidsvärde och klickar sedan på OK.

Redigera en XSLT-parameter

  1. Öppna dialogrutan XSL-omvandling. Du kan göra det genom att dubbelklicka på serverfunktionen XSL-omvandling i panelen Serverfunktioner (Fönster > Serverfunktioner) eller genom att lägga till en ny XSL-omvandling.
  2. Markera en parameter i listan med XSLT-parametrar.
  3. Klicka på knappen Redigera.
  4. Gör de ändringar du vill och klicka på OK.

Ta bort en XSLT-parameter

  1. Öppna dialogrutan XSL-omvandling. Du kan göra det genom att dubbelklicka på serverfunktionen XSL-omvandling i panelen Serverfunktioner (Fönster > Serverfunktioner) eller genom att lägga till en ny XSL-omvandling.
  2. Markera en parameter i listan med XSLT-parametrar.
  3. Klicka på minustecknet (-).

Skapa och redigera villkorsstyrda XSLT-regioner

Du kan skapa enkla villkorsstyrda regioner eller flera villkorsstyrda regioner på en XSLT-sida. Du kan antingen markera ett dokument i designvyn och lägga till en villkorsstyrd region i markeringen eller så kan du infoga en villkorsstyrd region där insättningspunkten finns i dokumentet.

Om du t.ex. vill visa orden ”Inte tillgängligt” bredvid priset på ett objekt när objektet inte är tillgängligt skriver du in texten ”Inte tillgängligt” på sidan, markerar den och lägger sedan till en villkorsstyrd region i den markerade texten. Dreamweaver omger markeringen med <xsl:if>-taggar och visar bara orden ”Inte tillgängligt” på sidan när data överensstämmer med villkoren för villkorsuttrycket.

Lägga till en villkorsstyrd XSLT-region

Du kan skriva ett enkelt villkorsuttryck som du infogar på din XSLT-sida. Om innehållet är markerat när du öppnar dialogrutan Villkorsregion kommer innehållet att kapslas in i ett <xsl:if>-block. Om du inte har markerat något innehåll läggs <xsl:if>-blocket till vid insättningspunkten på sidan. Det är bra att använda dialogrutan för att komma igång och sedan anpassa uttrycket i kodvyn.

<xsl:if>-elementet påminner om if-satsen i andra språk. Elementet innehåller ett sätt som gör att du kan testa ett villkor och vidta en åtgärd baserat på resultatet. Med <xsl:if>-elementet kan du testa om ett uttryck är ett enda sant eller falskt värde.

  1. Välj Infoga > XSLT-objekt > Villkorsregion eller klicka på ikonen Villkorsregion i kategorin XLST på panelen Infoga.
  2. Ange det villkorsstyrda uttrycket som du vill använda för regionen i dialogrutan Villkorsregion.

    I följande exempel vill du testa om attributvärdet @available för sammanhangets nod är true.

    Dialogrutan Villkorsregion
    Dialogrutan Villkorsregion

  3. Klicka på OK.

    Följande kod infogas på XSLT-sidan:

    <xsl:if test="@available=&apos;true&apos;"> 
        Content goes here 
    </xsl:if>

    Obs!

    Du måste använda citattecken runt strängvärden som är sanna. Dreamweaver kodar citattecknen åt dig (&apos;) så att de anges som giltig XHTML.

    Du kan förutom att testa noder för värden använda någon av de XSLT-funktioner som stöds i villkorssatser. Villkoret testas för den aktuella noden i XML-filen. I följande exempel vill du testa den senaste noden i resultatuppsättningen:

    Testa för den senaste noden i resultatuppsättningen
    Testa för den senaste noden i resultatuppsättningen

    Mer information och exempel på hur du skriver villkorsuttryck finns i <xsl:if>-avsnittet i referenspanelen (Hjälp > Referens).

Använda flera villkorsstyrda XSLT-regioner

Du kan skriva ett enkelt villkorsuttryck som du infogar på din XSLT-sida. Om innehållet är markerat när du öppnar dialogrutan Villkorsregion kommer innehållet att kapslas in i ett <xsl:choose>-block. Om du inte markerar innehållet läggs <xsl:choose>-blocket till vid insättningspunkten på sidan. Det är bra att använda dialogrutan för att komma igång och sedan anpassa uttrycket i kodvyn.

<xsl:choose>-elementet påminner om case-satsen i andra språk. Elementet innehåller ett sätt som gör att du kan testa ett villkor och vidta en åtgärd baserat på resultatet. Med <xsl:choose>-elementet kan du testa flera villkor.

  1. Välj Infoga > XSLT-objekt > Flervillkorsregion eller klicka på ikonen Flervillkorsregion i kategorin XLST på panelen Infoga.
  2. Ange det första villkoret i dialogrutan Flervillkorsregion.

    I följande exempel vill du testa om price-delelementet för sammanhangets nod är mindre än 5.

    Dialogrutan Flervillkorsregion
    Dialogrutan Flervillkorsregion

  3. Klicka på OK.

    I exemplet infogas följande kod på XSLT-sidan:

    <xsl:choose> 
        <xsl:when test="price&lt;5"> 
            Content goes here 
        </xsl:when> 
        <xsl:otherwise> 
            Content goes here 
        </xsl:otherwise> 
    </xsl:choose>
  4. Om du vill infoga ett till villkor placerar du insättningspunkten i kodvyn mellan <xsl:when>-taggparen eller precis före <xsl:otherwise>-taggen och infogar en villkorsstyrd region (Infoga > XSLT-objekt > Villkorsregion).

    När du har angivit villkoret och klickat på OK infogas en annan <xsl:when>-tagg i <xsl:choose>-blocket.

    Mer information och exempel på hur du skriver villkorsuttryck finns i <xsl:choose>-avsnitten i referenspanelen (Hjälp > Referens).

Ange (If)-egenskaper för villkorsstyrd region

Syftet med egenskapskontrollen Ange villkorsstyrd region är att ändra villkoret som använts i en villkorsstyrd region på XSL-sidan. Den villkorsstyrda regionen testar villkoret och vidtar en åtgärd baserat på resultatet.

  1. Ange ett nytt villkor i rutan Testa och tryck sedan på Enter.

Ange villkorsstyrda (When)-egenskaper

Syftet med egenskapskontrollen Ange villkorsstyrd region är att ändra villkoret som använts i en flervillkorsregion på XSL-sidan. Flervillkorsregionen testar villkoret och vidtar en åtgärd baserat på resultatet.

  1. Ange ett nytt villkor i rutan Testa och tryck sedan på Enter.

Infoga XSL-kommentarer

Du kan lägga till XSL-kommentartaggar i ett dokument eller så kan du kapsla in en markering i XSL-kommentartaggar.

Lägga till XSL-kommentartaggar i ett dokument

  1. Gör något av följande:
    • Välj Infoga > XSLT-objekt > XSL-kommentar i designvyn, skriv in innehållet i kommentaren (eller lämna rutan tom) och klicka på OK.

    • Välj Infoga > XSLT-objekt > XSL-kommentar i kodvyn.

    Obs!

    Du kan också klicka på ikonen XSL-kommentar i kategorin XSLT på panelen Infoga.

Kapsla in en markering i XSL-kommentartaggar

  1. Växla till kodvy (Visa > Kod).
  2. Markera texten som du vill kommentera.
  3. Klicka på knappen Lägg till kommentar i verktygsfältet Kodning och välj Lägg till <xsl:comment></xsl:comment>-kommentar.

Använd XPaths uttrycksbyggare för att lägga till uttryck för XML-data

XPath (XML Path-språk) är en syntax som inte består av XML för att rikta sig till delar av ett XML-dokument. Det används mestadels som frågespråk för XML-data precis som SQL-språket används för att fråga databaser. Mer information om XPath finns i språkspecifikationen för XPath på W3C-webbplatsen på www.w3.org/TR/xpath.

XPaths uttrycksbyggare är en Dreamweaver-funktion som gör att du kan bygga enkla XPath-uttryck för att identifiera särskilda noder med data för upprepade regioner. Fördelen med den här metoden istället för att dra värden från XML-schematrädet är att du kan formatera värdet som visas. Det aktuella sammanhanget identifieras baserat på placeringen av insättningspunkten i XSL-filen när dialogrutan XPaths uttrycksbyggare öppnas. Det aktuella sammanhanget visas i fet stil i XML-schematrädet. När du markerar i den här dialogrutan skapas de rätta XPath-satserna i förhållande till det aktuella sammanhanget. Detta förenklar processen att skriva rätt XPath-uttryck för nybörjare och avancerade användare.

Obs!

Den här funktionen är utformad för att hjälpa dig att skapa XPath-uttryck för att identifiera en särskild nod eller för upprepade regioner. Du kan inte redigera uttrycken manuellt. Om du behöver skapa komplicerade uttryck använder du XPaths uttrycksbyggare för att komma igång och anpassar sedan uttrycken i kodvyn eller med egenskapskontrollen.

Skapa ett XPath-uttryck för att identifiera en särskild nod

  1. Dubbelklicka på platshållaren för XML-data på sidan för att öppna XPaths uttrycksbyggare.
  2. I dialogrutan XPaths uttrycksbyggare (Dynamisk text) markerar du en nod i XML-schematrädet.

    Rätt XPath-uttryck skrivs i rutan Uttryck för att identifiera noden.

    Obs!

    Om du väljer en annan nod i XML-schematrädet ändras uttrycket efter ditt val.

    I följande exempel vill du visa price-delelementet för noden item:

    Dialogrutan XPaths uttrycksbyggare (dynamisk text)
    Dialogrutan XPaths uttrycksbyggare (dynamisk text)

    Denna markering skulle infoga följande kod på XSLT-sidan:

    <xsl:value-of select="price"/>
  3. (Valfritt) Välj ett formateringsalternativ på snabbmenyn Format.

    Det är bra att formatera en markering när värdet för noden returnerar en siffra. Dreamweaver innehåller en fördefinierad lista med formateringsfunktioner. En fullständig lista med tillgängliga formateringsfunktioner och exempel finns i referenspanelen.

    I följande exempel vill du formatera pris-delelementet som en valuta med två decimaler:

    Formatera delelementet pris som en valuta med två decimaler
    Formatera delelementet pris som en valuta med två decimaler

    Dessa alternativ skulle infoga följande kod på XSLT-sidan:<xsl:value-of select="format-number(provider/store/items/item/price,'$#.00')"/>

    <xsl:value-of select="format-number(provider/store/items/item/price,'$#.00')"/>
  4. Klicka på OK.
  5. Om du vill visa värdet för varje nod i XML-filen lägger du till en upprepad region i elementet som innehåller den dynamiska texten (t.ex. en HTML-tabellrad eller ett stycke).

    Mer information och exempel på hur du markerar noder för att returnera ett värde finns i <xsl:value-of/>-avsnittet i referenspanelen.

Markera en nod som ska upprepas

Du kan markera en nod som ska upprepas och eventuellt filtrera resultaten. I dialogrutan XPaths uttrycksbyggare kommer ditt markerade innehåll att kapslas in i ett <xsl:for-each>-block. Om du inte har markerat innehållet kommer <xsl:for-each>-blocket att anges vid insättningspunkten för markören.

  1. Dubbelklicka på platshållaren för XML-data på sidan för att öppna XPaths uttrycksbyggare.
  2. I dialogrutan XPaths uttrycksbyggare (Upprepad region) markerar du objektet som ska upprepas i XML-schematrädet.

    Rätt XPath-uttryck skrivs i rutan Uttryck för att identifiera noden.

    Obs!

    Upprepade objekt identifieras med ett plustecken (+) i XML-schematrädet.

    I följande exempel vill du upprepa varje item-nod i XML-filen.

    Dialogrutan XPaths uttrycksbyggare (upprepande region)
    Dialogrutan XPaths uttrycksbyggare (upprepande region)

    När du klickar på OK infogas följande kod på XSLT-sidan:

    <xsl:for-each select="provider/store/items/item"> 
     Content goes here 
    </xsl:for-each>

    I vissa fall kanske du vill arbeta med en delmängd med upprepade noder. Du kanske t.ex. bara vill ha objekt där ett attribut har ett visst värde. I detta fall måste du skapa ett filter.

Filtrera data som ska upprepas

Använd ett filter för att upprepa noder som har vissa attributvärden.

  1. I XML-schematrädet markerar du en nod som ska upprepas.
  2. Klicka på utökningsknappen Bygg filter.
  3. Klicka på plustecknet för att skapa ett tomt filter.
  4. Ange filterkriterierna i följande fält:

    Filtrera enligt

    Anger den upprepade noden som innehåller data som du vill filtrera efter. Snabbmenyn innehåller en lista med äldre noder i förhållande till noden som du markerade i XML-schematrädet.

    Plats

    Anger attributet eller delelementet för noden Filtrera enligt som kommer att användas för att begränsa resultaten. Du kan markera ett attribut eller delelement på snabbmenyn eller så kan du ange ditt eget XPath-uttryck i det här fältet för att identifiera underordnade objekt som ligger längre ned i schematrädet.

    Operator

    Anger jämförelseoperatören som ska användas i filteruttrycket.

    Värde

    Anger värdet som ska hittas i noden Filtrera enligt. Ange värdet. Om dynamiska parametrar anges för XSLT-sidan kan du markera en på snabbmenyn.

  5. Om du vill ange ett annat filter klickar du på plustecknet (+) igen.

    När du anger värden eller markerar i snabbmenyer ändras XPath-uttrycket i rutan Uttryck.

    I följande exempel vill du begränsa resultatet som angivits för de item-noder där värdet för attributet @available är true.

    Begränsa resultatet som angetts för de objektnoder där värdet för attributet @available är true
    Begränsa resultatet som angetts för de objektnoder där värdet för attributet @available är true

    När du klickar på OK infogas följande kod på XSLT-sidan:<xsl:for-each select="provider/store/items/item[@available = &apos;true&apos;]"> Innehållet här </xsl:for-each>

    <xsl:for-each select="provider/store/items/item[@available = &apos;true&apos;]"> 
          Content goes here 
    </xsl:for-each>

    Obs!

    Du måste omge strängvärden som är sanna med citattecken. Dreamweaver kodar citattecknen åt dig (&apos;) så att de anges som giltig XHTML.

    Du kan skapa mer komplicerade filter som gör att du kan ange överordnade noder som en del av filterkriterierna. I följande exempel vill du begränsa resultatet som angivits för de item-noder där butikens @id-attribut motsvarar 1 och objektets pris-nod är större än 5.

    Begränsa resultatet som angetts för de objektnoder där butikens @id-attribut motsvarar 1 och objektets prisnod är större än 5
    Begränsa resultatet som angetts för de objektnoder där butikens @id-attribut motsvarar 1 och objektets prisnod är större än 5

    När du klickar på OK infogas följande kod på XSLT-sidan:<xsl:for-each select="provider/store[@id = 1]/items/item[price &gt; 5]"> Innehållet här </xsl:for-each>

    Mer information och exempel på upprepade regioner finns i <xsl:for-each>-avsnittet i referenspanelen.

    <xsl:for-each select="provider/store[@id = 1]/items/item[price &gt; 5]"> 
        Content goes here 
    </xsl:for-each>

Denna produkt är licensierad enligt en Creative Commons Erkännande-Ickekommersiell-Dela Lika 3.0 Unported-licens  Twitter™- och Facebook-inlägg omfattas inte av villkoren i Creative Commons-licensen.

Juridiska meddelanden   |   Onlinesekretesspolicy