2009-03-27 3 views
1

Предположим, у меня есть XML внутри HTML документа, какпреобразования XML встроен в HTML

<html> 
    <body> 
    <xml> 
     <foo> 
      <bar /> 
      <baz /> 
     </foo> 
    </xml> 
    </body> 
</html> 

Каков наилучший способ применить XSLT к узлу XML?

+1

На сервере? На клиенте? Это HTML или XHTML? Куда должен идти результат? В вашем вопросе отсутствует какая-то существенная информация. – Tomalak

ответ

1

Emle - Electronic Mathematics Laboratory Equipment Javascript Файл emle_lab.js использует parseFromString(), чтобы создать документ из строки:

var inputText = '<?xml version="1.0" encoding="UTF-8"?>' + 
    '<emle xmlns="http://emle.sf.net/emle02">' + 
    ' <lab refid="' + aLabId + '"></lab>' + 
    '</emle>'; 
    var inputDoc = new DOMParser().parseFromString(inputText, "application/xml"); 
    var xsltDoc = jQuery.ajax({type: "GET", url: 'emle_lab.xsl', async: false}).responseXML; 
    var processor = new XSLTProcessor(); 
    processor.setParameter(null, 'emleLang', aLang); 
    processor.importStylesheet(xsltDoc); 
    var outputDoc = processor.transformToDocument(inputDoc.firstChild); 
1

Вы можете сохранить файл в формате XML с отдельным файлом XSL в том же каталоге, а затем в файле XML, связать его с файлом XSL:

<?xml version = '1.0'?> 
<?xml-stylesheet href="myfunkystyle.xsl" type="text/xsl"?> 
<ROWSET> 
    <ROW> 
     <!-- etc. --> 
    </ROW> 
</ROWSET> 

Оба IE и Firefox будет отображать XML-файл, преобразуя его.

Смежные вопросы