查看演示 xml文件查看 xsl 文件查看
1.新建一個(gè)vs2003的web工程,取名為XMLTest
2.將工程目錄下的WebForm1.aspx中內(nèi)容全部刪除,只留下頂部的一條語句:
<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="XMLTest.WebForm1" %>
3.修改WebForm1.aspx.cs中內(nèi)容,在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,并設(shè)為工程首頁:
<html> <head> <title></title> </head> <body> <div id="resTree"></div> <FONT face="宋體"></FONT><input type="button" value="執(zhí)行" 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) { if (http_request.status == 200) { xsltTree.loadXML(http_request.responseText); xt.stylesheet=xsltTree; var proc=xt.createProcessor(); proc.input=srcTree; proc.transform(); resTree.innerHTML=proc.output; } else { alert('There was a problem with the request.'); } } }
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); }
</script>
</body> </html>
出處:藍(lán)色理想
責(zé)任編輯:moby
上一頁 下一頁 調(diào)用xsl來解析xml文檔 [2]
◎進(jìn)入論壇網(wǎng)頁制作、網(wǎng)站綜合版塊參加討論
|