当前位置:首页 >> 网页设计 >> XML >> 调用xsl来解析xml文档(js异步) >> 内容

调用xsl来解析xml文档(js异步)

作者:趣趣虎 来源:www.ququhu.com 时间:2007-09-05

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');
            return false;
        }
        http_request.onreadystatechange = callback;
        http_request.open('GET', url, true);
        http_request.send(null);
    }

    function GetXml_CB() {

        if (http_request.readyState == 4) {
            if (http_request.status == 200) {   
    srcTree.loadXML(http_request.responseText);
    makeRequest("WebForm1.aspx?sel=xsl",GetXsl_CB);
            } else {
                alert('There was a problem with the request.');
            }
        }

    }
   
    function GetXsl_CB(){
       if (http_request.readyState == 4) {

共3页: 上一页 1 [2] [3] 下一页
文章关键字:文档 解析 调用 xml if xsl http_request new false 使用
165 * 70 广告位招租
联系QQ:349881211
165 * 60 广告位招租
联系QQ:349881211
网友发表评论:
昵称:趣趣虎网友 (您未登陆,默认匿名评论)
评论内容:不能超过250字,请自觉遵守互联网相关政策法规,请勿发布AD或不相关的内容!
验证码
热点文章
相关文章
相关连接
相关连接
图片连接