|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
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就不用说了, |
|