XSLT - 클라이언트
- 이전 페이지 XSLT apply
- 다음 페이지 서버 측에서 XSLT
브라우저가 XSLT를 지원하면, 문서를 XHTML로 변환하는 데 사용될 수 있습니다.
JavaScript 솔루션
이전 장에서는 XML 문서를 XHTML로 변환하는 방법을 XSLT를 사용하여 설명했습니다. 우리는 다음과 같은 방법으로 이 작업을 완료했습니다: XML 파일에 XSL 스타일 시트를 추가하고, 브라우저를 통해 변환을 완료했습니다.
이 방법의 효과는 좋지만, XML 파일에 스타일 시트 참조를 포함하는 것은 항상 만족스럽지 않습니다(예를 들어, XSLT를 인식하지 못하는 브라우저에서는 이 방법이 작동하지 않습니다).
보다 일반적인方法是 JavaScript를 사용하여 변환을 완료하는 것입니다.
JavaScript를 사용하여 우리는 다음과 같이 할 수 있습니다:
- 브라우저 확인 테스트 수행
- 브라우저와 사용자의 요구에 따라 다른 스타일 시트를 사용하세요
이것이 바로 XSLT의 매력입니다! XSLT의 설계 목적 중 하나는 하나의 형식에서 다른 형식으로 변환을 가능하게 하고, 다양한 브라우저와 다양한 사용자 요구를 지원하는 것입니다.
브라우저 측의 XSLT 변환은 앞으로의 브라우저가 수행할 주요 작업 중 하나가 될 것입니다. 동시에 특정 브라우저 시장에서의 성장도 목격할 수 있을 것입니다(시각 장애인, 웹 프린터, 청각 장비 등).
XML 파일과 XSL 파일
이전 장에서 이미 보여주었던 XML 문서를 확인해 주세요:
<?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>
그리고 부속된 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>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>
이 XML 파일은 XSL 파일에 대한 참조를 포함하고 있지 않다는 점을 주의하십시오.
중요 사항:이 문장은 XML 파일이 여러 가지 다른 XSL 스타일 시트로 변환할 수 있다는 것을 의미합니다.
브라우저에서 XML을 XHTML로 변환하십시오
이는 클라이언트에서 XML 파일을 XHTML로 변환하는 소스 코드입니다:
<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") // 변환 document.write(xml.transformNode(xsl)) </script> </body> </html>
추천:JavaScript를 작성하는 방법을 모르시면, 우리의《JavaScript 강의》。
첫 번째 코드는 마이크로소프트의 XML 파서의 인스턴스를 생성하고, 그런 다음 XML 파일을 메모리에 로드합니다. 두 번째 코드는 파서의 또 다른 인스턴스를 생성하고, 그런 다음 이 XSL 파일을 메모리에 로드합니다. 마지막 줄 코드는 XSL 문서를 사용하여 XML 문서를 변환하고, 결과를 브라우저에서 XHTML로 표시합니다. 작업 완료!
- 이전 페이지 XSLT apply
- 다음 페이지 서버 측에서 XSLT