« ほっとけない | メイン | Ajaxslt実装3 »

2005年7月 9日

Ajaxslt実装2

今回は、もっと一般的な方法を紹介します。

今回は、XMLファイル以外に、XSLTファイルもあらかじめ用意しておき、
JavaScript内でXSLTをロードしてXMLをトランスフォーム(変換)します。

XMLは前回と同じものを使用します。

用意したXSLTはこんなかんじ。ファイル名は「sample002.xsl」とした。


読み込み処理を行うページは下記のようにし、
ファイル名は「sample002.htm」とした。


今回は、中盤付近にある
var p = loadXslt("sample002.xsl");
で、XSLTファイルを指定している。
ファイルパスは各自の環境にあわせて、変更してください。

loadXslt関数内で、各ブラウザ用の方法でXSLTを読み込んでいます。

読み込んだ後は、前回と同じ方法でトランスフォームしています。
つまり
transformToHTML関数内で、
IEはtransformNode、
FirefoxはtransformToFragmentで
XMLにXSLTを適用し、その結果を出力しています。

IEでは、
var b = new ActiveXObject("Microsoft.XMLDOM");
で、
Firefoxでは、
var b = document.implementation.createDocument("", "", null);
で、XSLTファイルを読み込めるようにしています。
これをやっておかないと、ロード(load)が出来ないんです。

これと似たような方法がもうひとつあるので、次回紹介します。

投稿者 ponpon : 2005年7月 9日 18:51 | 【Ajax

トラックバック

◇重複トラックバックはこっそり削除しますのでお気になさらないでください。
◇トラックバックスパムと判断しましたらサックリ削除いたしますのでご了承ください。

このエントリーのトラックバックURL:

コメント

コメントしてください




保存しますか?



画像の中に見える文字を入力してください。