逍遥一派 发表于 2015-1-16 22:30:35

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

由于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就不用说了,

灵魂腐蚀 发表于 2015-1-18 07:02:53

运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。

活着的死人 发表于 2015-1-21 12:16:59

Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点)

飘灵儿 发表于 2015-1-30 17:43:13

兴趣爱好,那么你无须学编程,申请一个域名和空间,在网上下载一些免费开源的CMS系统,你不用改代码,只须熟悉它们的后台操作,像office一样简单方便,很快就能建一个站点,很多站长都是这样做的

精灵巫婆 发表于 2015-2-6 14:38:50

我认为比较好的方法是找一些比较经典的例子,每个例子比较集中一种编程思想而设计的。

蒙在股里 发表于 2015-2-16 15:49:56

你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。

冷月葬花魂 发表于 2015-3-5 07:16:07

以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。

莫相离 发表于 2015-3-12 00:29:17

运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。

第二个灵魂 发表于 2015-3-19 17:06:48

学习ASP其实应该上升到如何学习程序设计这种境界,其实学习程序设计又是接受一种编程思想。比如ASP如何学习,你也许在以前的学习中碰到过。以下我仔细给你说几点:

山那边是海 发表于 2015-3-29 15:47:56

用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。
页: [1]
查看完整版本: ASP教程之实例练习训练ASP+XML编程(2)