一、客户端转换

    function XsltTransform(xslfile)
  
       {        
  
           if(typeof(window.ActiveXObject) != 'undefined')
  
           {
  
               //ie
 
              try
 
              {
 
                  var xmlDoc=new ActiveXObject("Msxml2.DOMDocument.3.0");
 
                  var xslDoc = new ActiveXObject("Msxml2.FreeThreadedDOMDocument");
 
                  xmlDoc.async=false;
 
                  xslDoc.async = false;
 
                 xmlDoc.loadXML(document.getElementById("xmlContent").value.replace(/\r\n/gi,""));
 
                 xslDoc.load(xslfile);
 
                
 
                 var oTemplate = new ActiveXObject("Msxml2.XSLTemplate");
 
                 oTemplate.stylesheet = xslDoc;
 
                 var oProcessor = oTemplate.createProcessor();
 
                  oProcessor.input = xmlDoc.documentElement;
 
                                 
 
                  oProcessor.addParameter("parameter",'<%=count%>');
 
                  oProcessor.transform();
 
                 
 
                  document.getElementById('div').innerHTML=oProcessor.output;
 
                 
 
              }catch(e){
 
                
 
              }
 
          }   
 
          else if(document.implementation && document.implementation.createDocument)
 
          { 
 
              //ff
 
              try
 
              {
 
                  var parser=new DOMParser();
 
                  var xmlDoc;
 
                  if(document.getElementById("xmlContent").value == "")                
 
                     xmlDoc = parser.parseFromString(text,"text/xml");
 
                  else
 
                      xmlDoc = parser.parseFromString(document.getElementById("xmlContent").value.replace(/\r\n/gi,""),"text/xml");
 
                 
 
                  xmlDoc.async = false;
 
                  
 
                  var xslDoc = document.implementation.createDocument("", "", null);
 
                  xslDoc.async = false; 
 
                  xslDoc.load(xslfile);    
 
 
 
                // 定义XSLTProcessor对象
 
                  var xsltProcessor = new XSLTProcessor();
 
                  xsltProcessor.importStylesheet(xslDoc);
 
                  xsltProcessor.setParameter(null, "parameter", '<%=count %>');
 
                 // transformToDocument方式
 
                 var result = xsltProcessor.transformToDocument(xmlDoc);
 
                 document.getElementById('div').innerHTML = result.documentElement.textContent;
 
             }catch(e){   
 
             }
 
         }
 
     }
 

二、服务器端方法:

 XslTransform xslt = new XslTransform();     
xslt 转换方法xslt.Load(
"print_root.xsl");
xslt 转换方法XmlDocument doc 
= new XmlDocument();
xslt 转换方法doc.Load(
"library.xml");
xslt 转换方法
// Create a new document containing just the result tree fragment.
xslt 转换方法
XmlNode testNode = doc.DocumentElement.FirstChild; 
xslt 转换方法XmlDocument tmpDoc 
= new XmlDocument(); 
xslt 转换方法tmpDoc.LoadXml(testNode.OuterXml);
xslt 转换方法
// Pass the document containing the result tree fragment 
xslt 转换方法
// to the Transform method.
xslt 转换方法
Console.WriteLine("Passing " + tmpDoc.OuterXml + " to print_root.xsl");
xslt 转换方法xslt.Transform(tmpDoc, 
null, Console.Out, null);

相关文章:

  • 2022-01-12
  • 2021-06-04
  • 2022-03-09
  • 2021-06-07
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-10-05
  • 2021-10-25
  • 2021-08-10
  • 2021-08-06
  • 2022-03-09
相关资源
相似解决方案