プロが教えるわが家の防犯対策術!

大変困っていますのでよろしくお願いします。

XSLのファイル内でJavaScriptを記述し、JavaScriptでxmlの要素を取得操作したいのですが、とり方がわかりません。
ご教授のほどをよろしくお願いします。

==================================================================
sample.xsl
------------------------------------------------------------------
<?xml version="1.0" encoding="Shift_JIS"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
<html>
<head>
<title>XML: 基本サンプル</title>
</head>
<body>
<p align="center">サンプル</p>
<xsl:apply-templates select="information/value/applicationinfo" />
</body>
</html>
</xsl:template>

<xsl:template match="value/applicationinfo">

<Script Language = "JavaScript">
<xsl:comment>
<![CDATA[
document.write("<xsl:value-of select=\"componentname\" />");
]]>
</xsl:comment>
</Script>

<table border="1">
<tr>
<td><xsl:value-of select="componentname" /></td>
</tr>
</table>
</xsl:template>
</xsl:stylesheet>
==================================================================

下のテーブルでは要素を表示することはできます。
このやり方では駄目なのでしょうか?

A 回答 (2件)

すみません、


>XSLのファイル内でJavaScriptを記述し
というので勘違いしていました。
例示されているのは単にタイトルを出力しているだけなんですね(^^;
JavaScriptでXMLの要素を取得操作したいのであればDOMしかないでしょう。単純な表示ならその必要はないでしょう(単に埋め込むだけ)。
    • good
    • 0
この回答へのお礼

お礼遅くなりましたが、DOMを使って操作することができました。
ありがとうございました。

お礼日時:2002/06/28 13:05

<Script Language = "JavaScript">



</Script>
なんて書いてもXSLTプロセッサの出力にそのまま掃き出されるだけですよね?(^^; XSLTでJavaScriptなんか使えません。が、MicrosoftのMSXMLやSAXON等は独自拡張機能としてJavaScriptが使えます(SAXONはJavaScriptかどうか知りませんが)。使い方は下記URLを参照して下さい。

参考URL:http://www.atmarkit.co.jp/fxml/tanpatsu/10xslt/x …
    • good
    • 0
この回答へのお礼

すみません。上記のプログラムを

<Script Language = "JavaScript">
<xsl:comment>
<![CDATA[
document.write("あいうえお");
]]>
</xsl:comment>
</Script>

にすると"あいうえお"は表示されます。
これはJavaScriptが使えているとはいわないのですか?
そのままはきだすことが、使えているとはいわないのですか?

私がやりたいことは、IEでXMLのデータをつかって、ツリー(エクスプローラー風)を表示したいのですが、実現するためにはどのような手段を使えば一番いいのでしょうか?

DOMを使うべきなんでしょうか?
本当に初心者なのでわかりません。
経験者の方のご意見をお聞かせください!
よろしくお願いします。

お礼日時:2002/06/21 20:17

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!