XSLT - Sulla client
- 上一页 XSLT Apply
- 下一页 XSLT 在服务器端
Se il tuo browser supporta l'XSLT, può essere utilizzato nel browser per convertire il documento in XHTML.
Soluzione JavaScript
Nella sezione precedente, abbiamo spiegato come utilizzare l'XSLT per convertire un documento XML in XHTML. Abbiamo completato questo lavoro aggiungendo un foglio di stile XSL al file XML e completando la conversione tramite il browser.
Anche se questo metodo funziona bene, includere riferimenti ai fogli di stile nello XML non è sempre soddisfacenti (ad esempio, questo metodo non funziona nei browser che non riconoscono l'XSLT).
Un metodo più generale è utilizzare JavaScript per completare la conversione.
Utilizzando JavaScript, possiamo:
- Eseguire test di conferma del browser
- Usare diversi fogli di stile in base ai browser e alle esigenze degli utenti
Ecco il fascino dell'XSLT! Uno degli obiettivi di progettazione dell'XSLT è quello di rendere possibile la conversione da un formato a un altro, supportando diversi tipi di browser e diverse esigenze degli utenti.
La trasformazione XSLT sul lato del browser diventerà una delle principali attività eseguite dai browser futuri, e vedremo anche la sua crescita nel mercato dei browser specifici (braille, stampanti di rete, dispositivi audio, ecc.).
File XML e file XSL
Vediamo questo documento XML che è stato mostrato in una sezione precedente:
<?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>
e la relativa tabella di stile XSL:
<?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>La mia raccolta di CD</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>
Si prega di notare che questo file XML non contiene riferimenti al file XSL.
Cosa sapere:Questo significa che il file XML può essere convertito utilizzando più fogli di stile XSL diversi.
Convertire XML in XHTML nel browser
Questo è il codice sorgente utilizzato per convertire un file XML in XHTML sul client:
<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>
Suggerimento:Se non si conosce come scrivere JavaScript, si prega di studiare il nostroGuida JavaScript》。
Il primo segmento di codice crea un'istanza del parser XML di Microsoft e carica il file XML nella memoria. Il secondo segmento di codice crea un'altra istanza del parser e carica il file XSL nella memoria. L'ultima riga di codice utilizza il documento XSL per trasformare il documento XML e visualizzare i risultati come XHTML nel browser. L'operazione è completata!
- 上一页 XSLT Apply
- 下一页 XSLT 在服务器端