WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:IE6.0でのXMLの表示

0:[投稿] 迷えるXML初心者 [2002/12/13 12:49 ][環境:IE6,WINXP ローカル]

こんにちは。
IE6.0でのXMLの表示についての相談です。

IE6.0でXMLを読み込むと、XMLの階層構造がツリー形式で表示されます。しかし、XSLTで変換されたXMLは、ツリー形式で表示してくれません。

ソース
xx.xml
----------------------------------------------------------
<?xml version="1.0" encoding="Shift-JIS" standalone="no" ?>
<?xml-stylesheet type="text/xsl" href="xx.xsl" ?>
<a>
1
</a>
----------------------------------------------------------
xx.xsl
----------------------------------------------------------
<?xml version="1.0" encoding="Shift-JIS" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" />
<xsl:template match="/">
<xsl:value-of select="a" />
<b><c>2</c></b>
</xsl:template>
</xsl:stylesheet>
----------------------------------------------------------

xx.xmlを読み込むと、
表示されるのは 12 という文字列のみです、、、。
ソースの丸投げになってしまい、まことに恐縮ですが
どなたかXSLTで変換されたXMLを、
ツリー形式で表示させる方法を教えていただきませんでしょうか?


1:[回答] ween [2002/12/15 17:47 ]

JScriptを使えばこんな感じでできました(Win2K+IE6で確認)。

<script type="text/javascript">
var XML = new ActiveXObject('MSXML2.DOMDocument');
var XSL = new ActiveXObject('MSXML2.DOMDocument');
XML.async = true; XML.load('xx.xml');
XSL.async = true; XSL.load('xx.xsl');
XML.transformNodeToObject( XSL, XML );
XSL.load('res://msxml.dll/defaultss.xsl');
document.write( XML.transformNode( XSL ) );
</script>

もっとスマートな方法がありそうな気もしますが。

# スクリプトでXSLTを実行させているだけなので、上の例のように
# 最初のXSLTの結果が整形式XMLにならない場合は失敗します。


2:[完了] 迷えるXML初心者 [2002/12/16 10:20 ]

weenさんありがとうございました!!

>スクリプトでXSLTを実行させているだけなので、上の例のように
>最初のXSLTの結果が整形式XMLにならない場合は失敗します。
あっ!そうですね。
お恥ずかしい!!

回答(必須): 状態:

お名前(必須):

e-mail:

URL:




[戻る]

ChaichanPAPA's World