|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
三、格式转变XSL文件说明(Persons.xsl) ????例程中使用XSL对XMl数据进行格式化,并以HTML的形式返回到客户端。这个过程也可以放在客户端进行,但考虑到兼容性的问题,例程中采用了在服务器端通过ASP操纵DOM进行格式化的方式。 ????XSL文件的内容如下, <?xml version="1.0" encoding="gb2312"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:template match="/Persons"> <script language="javascript"> function add() { window.open("add.asp", "add", "width=300,height=320,resize=no"); } function edit(intId) { window.open("edit.asp?id="+intId, "edit", "width=300,height=320,resize=no"); } </script> <table width="600" border="0" align="center"> <tr> <td align="right"><a href="javascript:add();" title="添加新联系人">添加新联系人</a> </td> </tr> </table> <table align="center" width="680" cellspacing="1" cellpadding="2" border="0" bgcolor="#666600"> <tr class="title" bgcolor="#E5E5E5"> <td width="25"><xsl:text disable-output-escaping="yes">&</xsl:text>nbsp;</td> <td>姓名</td> <td>英文名</td> <td>手机</td> <td>电话</td> <td>Email</td> <td>QQ</td> <td>所在公司</td> </tr> <xsl:for-each select="Person"> <TR BGCOLOR="#FFFFFF"> <TD ALIGN="right"><xsl:value-of select="position()"/></TD> <TD STYLE="color:#990000"><A><xsl:attribute name="HREF">javascript:edit(\\\'<xsl:value-of select="position()"/>\\\');</xsl:attribute><xsl:attribute name="title">修改信息 </xsl:attribute><xsl:value-of select="Name"/></A></TD> <TD><xsl:value-of select="Nick"/></TD> <TD><xsl:value-of select="Mobile"/></TD> <TD><xsl:value-of select="Tel"/></TD> <TD><A><xsl:attribute name="HREF">mailto:<xsl:value-of select="Email"/></xsl:attribute><xsl:value-of select="Email"/></A></TD> <TD><xsl:value-of select="QQ"/></TD> <TD><xsl:value-of select="Company"/></TD> </TR> </xsl:for-each> </table> </xsl:template> </xsl:stylesheet> ????在服务器端的转变使用一个函数来完成,格式化成功,返回HTML字符串,格式化失败,打印出错误信息,如下, \\\'******************************************* \\\' 说明:使用XSL文件格式化XML文件。 \\\' 作者:gwd 2002-11-05 \\\' 参数:strXmlFile -- Xml文件,路径+文件名 \\\' strXslFile -- Xsl文件,路径+文件名 \\\' 返回:成功 -- 格式化后的HTML字符串 \\\' 失败 -- 自定义的错误信息 \\\'******************************************* Function FormatXml(strXmlFile, strXslFile) Dim objXml, objXsl strXmlFile = Server.MapPath(strXmlFile) strXslFile = Server.MapPath(strXslFile) Set objXml = Server.CreateObject("MSXML2.DOMDocument") Set objXsl = Server.CreateObject("MSXML2.DOMDocument") objXML.Async = False If objXml.Load(strXmlFile) Then objXsl.Async = False objXsl.ValidateonParse = False If objXsl.Load(strXslFile) Then On Error Resume Next \\\' 捕捉transformNode方式的错误 FormatXml = objXml.transformNode(objXsl) If objXsl.parseError.errorCode <> 0 Then Response.Write "<br><hr>" Response.Write "Error Code: " & objXsl.parseError.errorCode Response.Write "<br>Error Reason: " & objXsl.parseError.reason Response.Write "<br>Error Line: " & objXsl.parseError.line FormatXml = "<span class=""alert"">格式化XML文件错误!</span>" End If Else Response.Write "<br><hr>" Response.Write "Error Code: " & objXsl.parseError.errorCode Response.Write "<br>Error Reason: " & objXsl.parseError.reason Response.Write "<br>Error Line: " & objXsl.parseError.line FormatXml = "<span class=""alert"">装载XSL文件错误!</span>" End If Else Response.Write "<br><hr>" Response.Write "Error Code: " & objXml.parseError.errorCode Response.Write "<br>Error Reason: " & objXml.parseError.reason Response.Write "<br>Error Line: " & objXml.parseError.line FormatXml = "<span class=""alert"">装载XML文件错误!</span>" End If Set objXsl = Nothing Set objXml = Nothing End Function 返回类别: 教程 上一教程: 菜鸟十天学会ASP教程之第四天:数据库的连接和读取 下一教程: ASP应用:用STREAM读文件 您可以阅读与"实例演练ASP+XML编程(2)"相关的教程: · 实例演练ASP+XML编程(1) · 实例演练ASP+XML编程 · 实例演练ASP+XML编程(4) · 实例演练ASP+XML编程(3) · 实例学习DREAMWEAVER MX ASP编程基础1 |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |