讲解如何调用xsl来解析xml文档 [ 网站地图 ]

发表于:2009-12-24 浏览:25 作者: 来源:互联网

关键字:xsl,xml文档

描述:1.新建一个vs2003的web工程,取名为XMLTest     2.将工程目录下的WebForm1.aspx中内容全部删除,只留下顶部的一条语句:     <%@Pagelanguage="c#"C

1.新建一个vs2003的web工程,取名为XMLTest

     2.将工程目录下的WebForm1.aspx中内容全部删除,只留下顶部的一条语句:

     <%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="XMLTest.WebForm1" %>


3.修改WebForm1.aspx.cs中内容,在Page_Load中加入:

    XmlDocument doc=new XmlDocument();
    String xmlfile=string.Empty;
    xmlfile=Context.Request.PhysicalApplicationPath+(Request.QueryString["sel"].ToString()=="xml"?"\\hello.xml":"\\hello.xsl");
    doc.Load(xmlfile);
    Response.Write(doc.InnerXml);


     4.在工程根目录下新增test.htm,并设为工程首页:

<html>
<head>
  <title></title>
</head>
<body>
  <div id="resTree"></div>
  <FONT face="宋体"></FONT><input type="button" value="执行" onclick="GetXml()"><BR>
  <script language="JScript">
  var srcTree,xsltTree,xt;
  var http_request = false;
   
  function GetXml()
  {    
   srcTree = new ActiveXObject("Msxml2.FreeThreadedDOMDocument");
    srcTree.async=false;
    xsltTree= new ActiveXObject("Msxml2.FreeThreadedDOMDocument");
    xsltTree.async = false;
    xt=new ActiveXObject("MSXML2.XSLTemplate");
   resTree.innerHTML="";
    makeRequest("WebForm1.aspx?sel=xml",GetXml_CB);
  }
    
    function makeRequest(url,callback) {
        http_request = false;
        if (window.XMLHttpRequest) { // Mozilla, Safari,...
            http_request = new XMLHttpRequest();
            if (http_request.overrideMimeType) {
                http_request.overrideMimeType(‘text/xml‘);
            }
        } else if (window.ActiveXObject) { // IE
            try {
                http_request = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                try {
                    http_request = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (e) {}
            }
        }

        if (!http_request) {
            alert(‘Giving up :( Cannot create an XMLHTTP instance‘);

站长资讯网 做中国最丰富的资讯网站 沪ICP备05004089号