XSLT - Asiakaspuoli
- Edellinen sivu XSLT apply
- Seuraava sivu XSLT palvelimella
Jos selainsi tukee XSLT:ää, sitä voidaan käyttää dokumentin muuntamiseen XHTML:ksi.
JavaScript-ratkaisu
Edellisessä luvussa olemme kertoneet sinulle, miten voit käyttää XSLT:ää muuntaa XML-dokumenttia XHTML:ksi. Teimme tämän seuraavilla tavoin: lisäämällä XSL-tyylejä XML-tiedostoon ja suorittamalla muunnos selaimen kautta.
Vaikka tämä menetelmä toimii hyvin, ei aina ole tyydyttävää sisällyttää tyylejä XML-tiedostoon (esimerkiksi, jos selain ei tunnista XSLT:ää, tämä menetelmä ei toimi).
Yleisempi tapa on käyttää JavaScriptiä muunnosten suorittamiseen.
Käyttämällä JavaScriptiä voimme:
- Suorita selaimen varmistustesti
- Käytä erilaisia tyylejä selaimen ja käyttäjän tarpeiden mukaan
Tämä on juuri XSLT:n houkuttelevuus! Yksi XSLT:n suunnittelutavoitteista on tehdä mahdolliseksi muodon muuttaminen toiseen muotoon samalla tukien erilaisia selaimia ja erilaisia käyttäjätarpeita.
Selainpohjainen XSLT-muunnos tulee varmasti olemaan tulevien selainten suorittamien päätehtävistä yksi, ja näemme sen kasvavan erityisesti tiettyjen selainten markkinoilla (sokeiden tietokoneet, verkkopainimet, kuuntelulaitteet jne.).
XML-tiedosto ja XSL-tiedosto
Tarkastele tätä XML-dokumenttia, joka on esitetty edellisessä luvussa:
<?xml version="1.0" encoding="ISO-8859-1"?> <catalog> <cd> <title>Empire Burlesque</title> <artist>Bob Dylan</artist> <country>USA</country> <company>Columbia</company> <price>10.90</price> <year>1985</year> </cd> . . . </catalog>
Tarkastele tätä XML-tiedostoa.
ja mukana toimitettavat XSL-tyylit:
<?xml version="1.0" encoding="ISO-8859-1"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <html> <body> <h2>My CD Collection</h2> <table border="1"> <tr bgcolor="#9acd32"> <th align="left">Title</th> <th align="left">Artist</th> </tr> <xsl:for-each select="catalog/cd"> <tr> <td><xsl:value-of select="title" /></td> <td><xsl:value-of select="artist" /></td> </tr> </xsl:for-each> </table> </body> </html> </xsl:template> </xsl:stylesheet>
Tarkastele tätä XSL-tiedostoa.
Huomaa, että tämä XML-tiedosto ei sisällä viittauksia XSL-tiedostoihin.
Tärkeä asia:Tämä tarkoittaa, että XML-tiedostoa voidaan muuntaa useilla eri XSL-tyyleillä.
Muunna XML XHTML:ksi selaimessa
Tämä on lähdekoodi, joka käsittelee XML-tiedoston muuntamista XHTML:ksi asiakaspuolella:
<html> <body> <script type="text/javascript"> // Load XML var xml = new ActiveXObject("Microsoft.XMLDOM") xml.async = false xml.load("cdcatalog.xml") // Load XSL var xsl = new ActiveXObject("Microsoft.XMLDOM") xsl.async = false xsl.load("cdcatalog.xsl") // Transform document.write(xml.transformNode(xsl)) </script> </body> </html>
Vinkki:Jos et tiedä, miten kirjoittaa JavaScript, oppi meidän <JavaScript opetus>
Ensimmäinen koodirivi luo Microsoftin XML-parsin esimerkin ja luo XML-tiedoston muistiin. Toinen koodirivi luo toisen parserin esimerkin ja luo XSL-tiedoston muistiin. Viimeinen koodirivi muuntaa XML-tiedoston XSL-dokumentin avulla ja näyttää tuloksen XHTML:nä selaimessa. Tehtävä valmis!
- Edellinen sivu XSLT apply
- Seuraava sivu XSLT palvelimella