0

JavascriptでXSLTを使用してXML文字列を変換する必要があります。XSLTは独自のファイルに格納されますが、XMLはより大きなXMLドキュメントの一部であるため、変数に文字列として格納されます。

私の現在の解決策は次のようになります。

xslt = document.implementation.createDocument("","",null);
xslt.async = false;
xslt.load('xslfile.xsl');

xml = document.implementation.createDocument("","",null);
// here I need to include the XML as it is in the document

xsltProc.importStylesheet(xslt);
xml_dom = xsltProc.transformToDocument(xml);
output += new XMLSerializer().serializeToString(xml_dom.documentElement);

変数の内容をファイルに保存し、XSLTファイルを含めた方法で含めると、目的の出力(変換されたXML)が得られます。

xml = document.implementation.createDocument("","",null);
xml.async = false;
xml.load('xmlinput.xml');

変数のコンテンツをxmlDOMドキュメントに含める方法が必要です...またはもっとエレガントな方法はありますか?

前もって感謝します

4

2 に答える 2

2

Mozilla、Opera、Safari、Chrome、およびIE 9を使用すると、次のことができます。

var xml = new DOMParser().parseFromString(yourVar, 'application/xml');

変数内のXMLマークアップを解析してyourVarXMLDOMドキュメントにします。

于 2012-04-23T12:51:24.563 に答える
0

XMLを変数に格納し、通常どおりjQueryを使用してそれをトラバースできます。私は、次のようなことをする傾向があります。

window.auditDoc = $.parseXML("<?xml version='1.0' encoding='UTF-8'?><Bundle><Audit></Audit></Bundle>");

単一のxmlファイルで多くの作業を行っている場合は、それをwindow.auditDocに配置し、常にそれを参照することも便利です。

于 2012-04-23T12:57:50.220 に答える