Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Hjälp med att knåpa ihop XSL

Postades av 2004-02-23 13:19:18 - Kris Palm, i forum xml, Tråden har 13 Kommentarer och lästs av 1342 personer

Hej!
Jag har en XML fil som jag vill få upp på en webbsida, av någon anledning får jag inte till det , det är vid taggen <sub> som det krånglar... Kan någon hjälpa mig?

XML filen ser ut så här (något bantad):

<?xml version="1.0" encoding="utf-8" ?>
<ftg>
<produkt>
<artEgenRub>2. Fjäderåtergångsmotorer</artEgenRub>
<sub />
</produkt>
<produkt>
<artEgenRub>2.1 Spjällmotorer</artEgenRub>
<sub />
</produkt>
<produkt>
<artEgenRub>3. Motorer - brand</artEgenRub>
<sub>
<artEgenRub2>motortyp1</artEgenRub2>
<artEgenRub2>motortyp2</artEgenRub2>
<artEgenRub2>motortyp3</artEgenRub2>
</sub>
</produkt>
<produkt>
<artEgenRub>4. VAV - flödesreglering</artEgenRub>
<sub />
</produkt>
<produkt>
<artEgenRub>5. Ventiler, motorer - vridande</artEgenRub>
<sub />
</produkt>
</ftg>

**************************************

Jag vill att det ska skrivas ut ungefär så här på webbsidan:

2. Fjäderåtergångsmotorer
2.1 Spjällmotorer
motortyp1
motortyp2
motortyp3
4. VAV - flödesreglering
5. Ventiler, motorer - vridande

******************************************

Och så här har jag skrivit XSL-filen

<?xml version="1.0" encoding="utf-8" ?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<xsl:for-each select="ftg/produkt">
<xsl:value-of select="artEgenRub" />
<br/>
<xsl:for-each select="ftg/produkt/sub">
<xsl:value-of select="artEgenRub2" /><br/>
</xsl:for-each>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>





Vänligen Kristofer




Svara

Sv: Hjälp med att knåpa ihop XSL

Postades av 2004-02-23 14:45:58 - Johan Bovin

är ingen guru men borde det inte räcka med sub inne i den sista for-each:en... du är ju redan nere i rätt nod... alltså:
<code>
<?xml version="1.0" encoding="utf-8" ?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<xsl:for-each select="ftg/produkt">
<xsl:value-of select="artEgenRub" />
<br/>
<xsl:for-each select="sub">
<xsl:value-of select="artEgenRub2" /><br/>
</xsl:for-each>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>

</code>


Svara

Sv: Hjälp med att knåpa ihop XSL

Postades av 2004-02-23 15:29:21 - Kris Palm

Jo på sätt och vis, men då får jag ut:

2. Fjäderåtergångsmotorer
2.1 Spjällmotorer
3. Motorer - brand
motortyp1
4. VAV - flödesreglering
5. Ventiler, motorer - vridande

Den skriver bara ut ett av elementen som kommer under sub-taggen, inte alla tre. Det är något knepigt med hur jag ska hantera denna delen:

<xsl:for-each select="sub">
<xsl:value-of select="artEgenRub2" /><br/>
</xsl:for-each>

Den vill liksom inte "loopa" ut alla värdena bara den första!
//Kris


Svara

Sv: Hjälp med att knåpa ihop XSL

Postades av 2004-02-23 15:42:01 - Daniel Hermansson

Har aldrig använt xml/xsl men har lite allmän prg kunskap

Skulle kunna tro att det funkar om du skriver så här?

<sub>
<artEgenRub2>motortyp1</artEgenRub2>
</sub>
<sub>
<artEgenRub2>motortyp2</artEgenRub2>
</sub>
<sub>
<artEgenRub2>motortyp3</artEgenRub2>
</sub>

Men det finns säkert någon annan bättre lösning?


Svara

Sv: Hjälp med att knåpa ihop XSL

Postades av 2004-02-23 15:47:21 - Kris Palm

Problemet är att antalet "poster" under <sub> varierar... så det är ingen lösning tyvärr.
//K


Svara

Sv: Hjälp med att knåpa ihop XSL

Postades av 2004-02-23 20:29:49 - Ulf Carlsson

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<xsl:apply-templates select="ftg/produkt"/>
</xsl:template>
<xsl:template match="produkt">
<xsl:value-of select="artEgenRub"/>
<br/>
<xsl:apply-templates select="sub"/>
</xsl:template>
<xsl:template match="sub">
<xsl:for-each select="artEgenRub2">
<xsl:value-of select="self::node()"/>
<br/>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>


Det går att lösa det på flera olika sätt men här är ett lösningsförslag!


Svara

Sv: Hjälp med att knåpa ihop XSL

Postades av 2004-02-24 09:23:51 - Kris Palm

Hej!
Tack nu börjar det arta sig, men då dyker ett nytt problem upp som jag inte nämnt tidigare. Jag ska även ha artEgenRub2 klickbar (listan är en del av ett menyval).

om den aktuella delen av XML filen ser ut så här:

<sub>
<link2>http://www.adress.se</link2>
<artEgenRub2>spjäll1</artEgenRub2>
<link2>http://www.enannaadress.se</link2>
<artEgenRub2>spjäll2</artEgenRub2>
</sub>

*******************************

Så skriver jag så här i XSL:en:

<xsl:template match="sub">
<xsl:for-each select="artEgenRub2">
<a>
<xsl:attribute name="href">
<xsl:value-of select="link2" />
</xsl:attribute>
<xsl:value-of select="self::node()"/>
</a>
<br/>
</xsl:for-each>
</xsl:template>

*********************************

den skriver ut länktexten men den får inte med link2, så länken går ingenstans.
Några tips?


Svara

Sv: Hjälp med att knåpa ihop XSL

Postades av 2004-02-24 23:16:44 - Ola Lindfeldt


Så här kanske...


<xsl:template match="produkt">
<xsl:value-of select="artEgenRub"/>
<br/>
<xsl:apply-templates select="sub"/>
</xsl:template>

<xsl:template match="link2">
<xsl:value-of select="."/>
<br/>
</xsl:template>
<xsl:template match="artEgenRub2">
<xsl:value-of select="."/>
<p/>
</xsl:template>




Svara

Sv: Hjälp med att knåpa ihop XSL

Postades av 2004-02-25 08:39:32 - Kris Palm

nopp, det skriver bara ut länkarna, de blir inte klickbara....

//K


Svara

Sv: Hjälp med att knåpa ihop XSL

Postades av 2004-02-25 14:34:50 - Johan Bovin

Nåt sånt här kanske...
<code>
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<xsl:apply-templates select="ftg/produkt"/>
</xsl:template>
<xsl:template match="produkt">
<xsl:value-of select="artEgenRub"/>
<br/>
<xsl:apply-templates select="sub"/>
</xsl:template>
<xsl:template match="sub">
<xsl:for-each select="link2">
<xsl:if test="local-name(following-sibling::node())='artEgenRub2'">
<a>
<xsl:attribute name="href">
<xsl:value-of select="self::node()"/>
</xsl:attribute>
<xsl:value-of select="following-sibling::node()"/>
</a>
<br/>
</xsl:if>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>


</code>


Svara

Sv: Hjälp med att knåpa ihop XSL

Postades av 2004-02-26 10:03:05 - Kris Palm

Tack för all hjälp!
Det sista tipset var ovärdeligt...
Nu fungerar allt som det ska, lösningen är dock jäkligt osnygg!

Som någon här på forumet sa: "Känner man bara till hammaren ser alla problem ut som spikar"...

Jag har insett att mitt sätt att tänka från början var felaktigt. Jag borde ha löst mitt grundproblem med hjälp av JavaScript och XML, och inte blandat in ASP så mycket, så om någon har ett bra exempel på hur man bygger en "trädmeny" med JavaScript och XML så vore jag glad för tips.

mvh Kris




Svara

Sv: Hjälp med att knåpa ihop XSL

Postades av 2004-02-26 22:33:03 - Ola Lindfeldt

Jag tycker absolut att XSLT är rätt teknik för detta, och att min lösning visst är snygg. Inte speciellt svårt för dig att komplettera den med A href osv. Något får du väl göra själv - här får du bara tankehjälp inte kompletta system som andra ska skriva åt dig.... =)

Ola


Svara

Sv: Hjälp med att knåpa ihop XSL

Postades av 2004-02-27 08:40:01 - Johan Bovin

Ola:
Jag håller på att lära mig XSL även jag men jag kan inte få ihop din lösning med en a tag på rätt ställe. Kan du inte visa hur du hade tänkt att det skulle fungera? Så kan dina kunskaper komma fler till gagn...


Svara

Sv: Hjälp med att knåpa ihop XSL

Postades av 2004-02-27 09:56:37 - Kris Palm

Hej!
Nejnej... det är inget fel på era förslag! Jag tackar så mycket för all hjälp.

Jag har ju bara presenterat lösa delar ur min lösning/problem så att ni ska slippa se hela eländet.

Istället för att ladda in hela menyn från XML från början så laddar jag in valda delar av XML filen mha querystrings som jag plockar mha ASP, detta för att jag ville ladda om sidan efter varje gång man har klickat, detta blev dock en dålig (rörig) lösning mot slutet och jag borde ha tänkt annorlunda, men man lär sig ju grejjer hela tiden och det är alltid kul att känna att man har tagit ett (åtminstone litet) steg framåt!

//Kris


Svara

Nyligen

  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak
  • 16:14 Vem anlitar man egentligen när tak
  • 16:13 Vem anlitar man egentligen när tak
  • 11:52 Noen erfaring med uttak hos Mostbe
  • 11:51 Noen erfaring med uttak hos Mostbe

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 574
27 958
271 741
5 785
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies