仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 626|回复: 9
打印 上一主题 下一主题

[学习教程] ASP教程之实例练习训练ASP+XML编程(2)

[复制链接]
逍遥一派 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:30:35 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
由于ASP提供的是一对多的服务,所以用户的一些特殊需求很难得到满足。3、格局转换XSL文件申明(Persons.xsl)

例程中利用XSL对XMl数据举行格局化,并以HTML的情势前往到客户端。这个历程也能够放在客户端举行,但思索到兼容性的成绩,例程中接纳了在服务器端经由过程ASP利用DOM举行格局化的办法。

XSL文件的内容以下,

<?xmlversion="1.0"encoding="gb2312"?>
<xsl:stylesheetxmlns:xsl="http://www.w3.org/1999/XSL/Transform"version="1.0">
<xsl:templatematch="/Persons">
<scriptlanguage="javascript">
 functionadd()
 {
  window.open("add.asp","add","width=300,height=320,resize=no");
 }
 functionedit(intId)
 {
  window.open("edit.asp?id="+intId,"edit","width=300,height=320,resize=no");
 }
</script>
<tablewidth="600"border="0"align="center">
 <tr>
  <tdalign="right"><ahref="javascript:add();"title="增加新接洽人">增加新接洽人</a>  </td>
 </tr>
</table>

<tablealign="center"width="680"cellspacing="1"cellpadding="2"border="0"bgcolor="#666600">
 <trclass="title"bgcolor="#E5E5E5">
  <tdwidth="25"><xsl:textdisable-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-eachselect="Person">
 <TRBGCOLOR="#FFFFFF">
  <TDALIGN="right"><xsl:value-ofselect="position()"/></TD>
  <TDSTYLE="color:#990000"><A><xsl:attributename="HREF">javascript:edit(<xsl:value-ofselect="position()"/>);</xsl:attribute><xsl:attributename="title">修正信息  </xsl:attribute><xsl:value-ofselect="Name"/></A></TD>
  <TD><xsl:value-ofselect="Nick"/></TD>
  <TD><xsl:value-ofselect="Mobile"/></TD>
  <TD><xsl:value-ofselect="Tel"/></TD>
  <TD><A><xsl:attributename="HREF">mailto:<xsl:value-ofselect="Email"/></xsl:attribute><xsl:value-ofselect="Email"/></A></TD>
  <TD><xsl:value-ofselect="QQ"/></TD>
  <TD><xsl:value-ofselect="Company"/></TD>
 </TR>
 </xsl:for-each>
</table>
</xsl:template>
</xsl:stylesheet>
在服务器真个转换利用一个函数来完成,格局化乐成,前往HTML字符串,格局化失利,打印堕落误信息,以下,

*******************************************
申明:利用XSL文件格局化XML文件。
gwd2002-11-05
参数:strXmlFile--Xml文件,路径+文件名
strXslFile--Xsl文件,路径+文件名
前往:乐成--格局化后的HTML字符串
失利--自界说的毛病信息
*******************************************
FunctionFormatXml(strXmlFile,strXslFile)
 DimobjXml,objXsl
 strXmlFile=Server.MapPath(strXmlFile)
 strXslFile=Server.MapPath(strXslFile)
 SetobjXml=Server.CreateObject("MSXML2.DOMDocument")
 SetobjXsl=Server.CreateObject("MSXML2.DOMDocument")
 objXML.Async=False
 IfobjXml.Load(strXmlFile)Then
  objXsl.Async=False
  objXsl.ValidateonParse=False
  IfobjXsl.Load(strXslFile)Then
   OnErrorResumeNext捕捉transformNode办法的毛病
   FormatXml=objXml.transformNode(objXsl)
   IfobjXsl.parseError.errorCode<>0Then
    Response.Write"<br><hr>"
    Response.Write"ErrorCode:"&objXsl.parseError.errorCode
    Response.Write"<br>ErrorReason:"&objXsl.parseError.reason
    Response.Write"<br>ErrorLine:"&objXsl.parseError.line
    FormatXml="<spanclass=""alert"">格局化XML文件毛病!</span>"
   EndIf
  Else
   Response.Write"<br><hr>"
   Response.Write"ErrorCode:"&objXsl.parseError.errorCode
   Response.Write"<br>ErrorReason:"&objXsl.parseError.reason
   Response.Write"<br>ErrorLine:"&objXsl.parseError.line
   FormatXml="<spanclass=""alert"">装载XSL文件毛病!</span>"
  EndIf
 Else
  Response.Write"<br><hr>"
  Response.Write"ErrorCode:"&objXml.parseError.errorCode
  Response.Write"<br>ErrorReason:"&objXml.parseError.reason
  Response.Write"<br>ErrorLine:"&objXml.parseError.line
  FormatXml="<spanclass=""alert"">装载XML文件毛病!</span>"
 EndIf
 SetobjXsl=Nothing
 SetobjXml=Nothing
EndFunction
对于中小型web应用来说,php有很强的竞争力,linux+apache+mysql+php(lamp)的组合几乎可以胜任绝大多数网站的解决方案,对于大型应用来讲,对于系统架构要求更高,需要有成熟的框架支持,jsp的struts是个不错的框架,国内介绍它的资料也非常多,应用逐渐广泛起来。asp就不用说了,
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-14 21:55

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表