posts - 495,comments - 227,trackbacks - 0
          下邊是xslt文件
          <?xml version="1.0" encoding="UTF-8"?>
          <xsl:stylesheet version="2.0"
              xmlns:xsl
          ="http://www.w3.org/1999/XSL/Transform"
              xmlns:xs
          ="http://www.w3.org/2001/XMLSchema"
              xmlns:fn
          ="http://www.w3.org/2005/xpath-functions">
              
          <xsl:template match="root">
                      
          <html><title>ss</title>
                      
          <body>
                      
          <xsl:value-of select="message" />
                  
          </body>
                  
          </html>
              
          </xsl:template>        
          </xsl:stylesheet>
          下邊是XML文件
          <?xml version="1.0" encoding="UTF-8"?>
          <?xml-stylesheet type="text/xsl" href="1.xslt"?>
          <root>
              
          <message>這里的</message>
          </root>
          下邊是通過Ajax調用的函數
          function getHtml(xmlText, xsltFile){
              
          var text;
                  
              
          if(typeof(window.ActiveXObject) != 'undefined'){
                  
          // 支持IE瀏覽器
                  try{
                      
          var xmlDoc=new ActiveXObject("Msxml2.DOMDocument.3.0");
                      xslDoc 
          = new ActiveXObject("Msxml2.DOMDocument.3.0");
                      xmlDoc.async
          =false;
                      xslDoc.async 
          = false;  
                      xmlDoc.loadXML(xmlText);                    
                      xslDoc.load(xsltFile);
                      text 
          = xmlDoc.documentElement.transformNode(xslDoc.documentElement);
                  }
          catch(e){
                      
          if (isDebug) alert(e.name + "" + e.message);
                      alert(
          "Unable to do xml/xsl processing");
                      alert(e.name 
          + "" + e.message);            
                  }
                  
              }
          else if(document.implementation && document.implementation.createDocument){  
                  
          // 支持Mozilla瀏覽器
                try {
                
          // 在Firefox的XML DOM實現中,并沒有loadXML()方法,不過通過Firefox中的DOMParser類可以模擬loadXML()的行為
                  var oParser = new DOMParser();
                  
          var xmlDoc = oParser.parseFromString(xmlText,"text/xml");        
                   xslDoc 
          = document.implementation.createDocument(""""null);
                   xslDoc.async 
          = false;  
                   xslDoc.load(xsltFile);     
                 
                   
          // 定義XSLTProcessor對象
                 var xsltProcessor = new XSLTProcessor();
                 xsltProcessor.importStylesheet(xslDoc);
                  
          // transformToDocument方式
                  var result = xsltProcessor.transformToDocument(xmlDoc);
                  
          var xmls = new XMLSerializer();
                  text 
          = xmls.serializeToString(result);
                 
                }
                
          catch(e)  {
                     
          if (isDebug) alert(e.name + "" + e.message);
                     alert(
          "Unable to do xml/xsl processing");           
                }

               }    
              
              
          return text;
          }
          posted on 2007-06-07 16:15 SIMONE 閱讀(1158) 評論(1)  編輯  收藏 所屬分類: JAVA 、JSP 、JavaScript

          FeedBack:
          # re: XML+XSLT 在IE, Firefox 下顯示
          2014-09-18 17:00 | 搜索
          ie7 下會報錯  回復  更多評論
            
          主站蜘蛛池模板: 内黄县| 军事| 丹阳市| 林口县| 集安市| 通江县| 浙江省| 浦江县| 营山县| 英超| 阜新市| 汝阳县| 山东省| 普宁市| 格尔木市| 新巴尔虎右旗| 闻喜县| 镇宁| 两当县| 南华县| 海丰县| 九龙县| 济宁市| 西华县| 蒙城县| 漾濞| 兰考县| 大安市| 富平县| 岳阳县| 石柱| 重庆市| 金山区| 凤凰县| 安泽县| 九寨沟县| 洪洞县| 马鞍山市| 贵州省| 渭南市| 堆龙德庆县|