« ほっとけない | メイン | Ajaxslt実装3 »
2005年7月 9日
Ajaxslt実装2
今回は、もっと一般的な方法を紹介します。今回は、XMLファイル以外に、XSLTファイルもあらかじめ用意しておき、
JavaScript内でXSLTをロードしてXMLをトランスフォーム(変換)します。
XMLは前回と同じものを使用します。
用意したXSLTはこんなかんじ。ファイル名は「sample002.xsl」とした。
読み込み処理を行うページは下記のようにし、
ファイル名は「sample002.htm」とした。
今回は、中盤付近にある
ファイルパスは各自の環境にあわせて、変更してください。
loadXslt関数内で、各ブラウザ用の方法でXSLTを読み込んでいます。
読み込んだ後は、前回と同じ方法でトランスフォームしています。
つまり
transformToHTML関数内で、
IEはtransformNode、
FirefoxはtransformToFragmentで
XMLにXSLTを適用し、その結果を出力しています。
IEでは、
Firefoxでは、
これをやっておかないと、ロード(load)が出来ないんです。
これと似たような方法がもうひとつあるので、次回紹介します。
用意した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:
