ASP网站制作之仅用xsl和asp完成分页功能
当然了,现在国内CRM厂商的产品与其说是CRM,但从至少从我的角度分析上来看,充其量只是一个大型的进销存而已了,了解尚浅,不够胆详评,这里只提技术问题注重事项:※本文代码大概有一些过剩部分未往失落,请在浏览时疏忽。
一些内部include出去的文件这里就不贴下去了。
※小乙写xsl也不久,良多语句都不会利用,有些中央写得对照罗嗦,
假如您有更好的分页代码,请多多拿来交换。
※合用于:用aspload出去xml代码,然后用此xsl文件举行分页处置。
※
------------------------------------
asp文件大抵布局:
<%@Language=VBScript%>
<!--#includefile=include/lib.asp-->
<%
cc=server.MapPath("trans.xml")
setsource=server.CreateObject("msxml2.domdocument")
source.async=false
source.load(cc)
xslfile=server.MapPath("index.xsl")
setstyle=server.CreateObject("msxml2.domdocument")
style.async=false
style.load(xslfile)
Response.writesource.transformNode(style)
Response.writegb_html(source.transformNode(style))
Response.End
%>
------------------------------------load出去的xml数据是如许的:
<?xmlversion="1.0"encoding="GB2312"?>
<root>
<function>
<PO>内里的标签在前面的xsl文件里被"<xsl:for-each>"</PO>
<PO>……………………</PO>
<PO>……………………</PO>
<PO>……………………</PO>
</function>
</root>
------------------------------------
xsl文件的内容:
<?xmlversion="1.0"encoding="GB2312"?>
<xsl:stylesheetversion="1.0"xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:includehref="include/ydzhongxin.xsl"/><!--嵌进头模板,尾模板-->
<xsl:paramname="yd">7</xsl:param><!--挪用二级导航条所用参数-->
<xsl:paramname="page"><xsl:value-ofselect="count(//PO)"/></xsl:param>
<!--界说根模板-->
<xsl:templatematch="/">
<html>
<head>
<metahttp-equiv="Content-Type"content="text/html;charset=gb2312"/>
<linkrel="stylesheet"type="text/css"href="include/style.css"/>
<title>了局列表</title>
</head>
<bodyleftMargin="0"topMargin="0">
<xsl:call-templatename="ydtitle"/>
<divalign="center">
<xsl:apply-templatesselect="root/function"/>
<!--婚配function模板-->
</div>
<xsl:call-templatename="end"/>
</body>
</html>
</xsl:template>
<!--界说function模板-->
<xsl:templatematch="function">
<!-----------------翻页链接入手下手------------->
<xsl:variablename="pagesize">5</xsl:variable><!--是分页参数-->
<xsl:choose>
<xsl:whentest="/root/session/page">
<!--进进一级choose的一个when前提分支!!!!!
-------------进进此分支,证实用户已有翻页操纵---------------->
<xsl:variablename="page"><xsl:value-ofselect="/root/session/page"/></xsl:variable>
<tableborder="0"cellpadding="2"cellspacing="0"width="630">
<tr>
<tdalign="right">
<!--进进二级choose!!!-->
<xsl:choose>
<!--①id小于即是0的情形,显现最初一页。-->
<xsl:whentest="$pid<1">
<a><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="count
(//PO)"/></xsl:attribute>
[首]</a>
<atitle="前一页"><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-of
select="$size*2"/></xsl:attribute>[<<<]</a>
<atitle="后一页">[>>>]</a>
<a>[尾]</a>
</xsl:when>
<!--②id位于之间的情形,前页一般,后页无。-->
<xsl:whentest="$pid<($size+1)and$pid>0">
<a><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="count
(//PO)"/></xsl:attribute>
[首]</a>
<atitle="前一页"><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-of
select="$pid+$size"/></xsl:attribute>[<<<]</a>
<atitle="后一页">[>>>]</a>
<a>[尾]</a>
</xsl:when>
<!--③id位于之间的情形,前页无,后页一般。-->
<xsl:whentest="$pid<count(//PO)and$pid>(count(//PO)-$size)">
<a><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="count
(//PO)"/></xsl:attribute>
[首]</a>
<atitle="前一页"><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="count
(//PO)"/></xsl:attribute>[<<<]</a>
<atitle="后一页"><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="$pid-
$size"/></xsl:attribute>[>>>]</a>
<a><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="$size"/></xsl:attribute>
[尾]</a>
</xsl:when>
<!--④id即是count的情形,显现首页。-->
<xsl:whentest="$pid=count(//PO)">
<a>[首]</a>
<atitle="前一页">[<<<]</a>
<atitle="后一页"><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="count
(//PO)-$size"/></xsl:attribute>[>>>]</a>
<a><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="$size"/></xsl:attribute>
[尾]</a>
</xsl:when>
<!--⑤id年夜于count的情形,显现首页。-->
<xsl:whentest="$pid>count(//PO)">
<a>[首]</a>
<atitle="前一页">[<<<]</a>
<atitle="后一页"><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="count
(//PO)-$size"/></xsl:attribute>[>>>]</a>
<a><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="$size"/></xsl:attribute>
[尾]</a>
</xsl:when>
<!--一般情形-->
<xsl:otherwise>
<a><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="count
(//PO)"/></xsl:attribute>
[首]</a>
<atitle="前一页"><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="$pid+
$size"/></xsl:attribute>[<<<]</a>
<atitle="后一页"><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="$pid-
$size"/></xsl:attribute>[>>>]</a>
<a><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="$size"/></xsl:attribute>
[尾]</a>
</xsl:otherwise>
</xsl:choose>
<!-------------------------------------------->
</td>
</tr>
</table><br/>
<!-----------遍历切合请求的PO结点--------------->
<xsl:for-eachselect="PO">
<xsl:sortselect="PO_ID"order="descending"data-type="number"/>
<xsl:call-templatename="PO"/>
<br/><br/><br/>
</xsl:for-each>
<!--加入一级choose的一个when前提分支!!!!!-->
</xsl:when>
<!--------------------用户间接进进的形态-------------------->
<xsl:otherwise>
<!--进进一级choose的另外一个when前提分支!!!!!-->
<tableborder="0"cellpadding="2"cellspacing="0"width="630">
<tr><tdalign="right">
<a>[首]</a>
<atitle="前一页">[<<<]</a>
<atitle="后一页"><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="$pid-
$size"/></xsl:attribute>[>>>]</a>
<a><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="$size"/></xsl:attribute>
[尾]</a>
</td></tr>
</table><br/>
<xsl:for-eachselect="PO">
<xsl:sortselect="PO_ID"order="descending"data-type="number"/>
<xsl:call-templatename="PO"/>
<br/><br/><br/>
</xsl:for-each>
<!--加入一级choose的另外一个when前提分支!!!!!-->
</xsl:otherwise>
</xsl:choose>
<!----------------翻页链接到此停止------------->
<br/>
<xsl:iftest="count(//PO)=0">
<divalign="center"><b>
<imgsrc="http://edu.cnzz.cn/NewsInfo/images/msg2.gif"align="absmiddle"/>
</b><fontcolor="#CC0000"face="楷体CS"size="3"><b>
没有切合以后前提的定单</b></font>
<a><xsl:attributename="href">lkxx.asp?po_id=<xsl:value-ofselect="PO_ID"/></xsl:attribute></a>
</div>
><br/><br/>
<inputtype="button"value="从头输出前提查询"/>
</xsl:if>
</xsl:template>
<!-------------------------------------------->
<xsl:templatename="PO">
<tableborder="1"cellpadding="2"cellspacing="0"width="100%">
<tr>
<tdnowrap="nowrap"width="70">号码</td>
<tdnowrap="nowrap"width="110">称号</td>
<tdnowrap="nowrap"width="110">日期</td>
<tdnowrap="nowrap"width="110">职员</td>
</tr>
<tr>
<tdnowrap="nowrap"><xsl:value-ofselect="num"/></td>
<tdnowrap="nowrap"><xsl:value-ofselect="username"/></td>
<tdnowrap="nowrap"><xsl:value-ofselect="dt"/></td>
<tdnowrap="nowrap"><xsl:value-ofselect="men"/></td>
</tr>
</table>
</xsl:template>
</xsl:stylesheet>
asp,jsp,php是web开发的三大技术,asp简单易用且有microsoft做靠山,jsp功能强大是因为有java支持,php则开源跨平台.在国内,asp应用范围最广,jsp发展势头最猛,php则处于劣势.这可能与公司的支持以及技术的培训有关. 我认为比较好的方法是找一些比较经典的例子,每个例子比较集中一种编程思想而设计的。 ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这就明显产生以下几个问题: 学习是为了用的,是为了让你的程序产生价值,把握住这个原则会比较轻松点。除此之外,课外时间一定要多参加一些社会实践活动,来锻炼自己的能力。 跟学别的语言一样,先掌握变量,流程控制语句(就是ifwhileselect)等,函数/过程,数组 在平时的学习过程中要注意现学现用,注重运用,在掌握了一定的基础知识后,我们可以尝试做一些网页,也许在开始的时候我们可能会遇到很多问题,比如说如何很好的构建基本框架。 ASP主要是用好六个对象,其实最主要的是用好其中两个:response和request,就可以随心所欲地控制网页变换和响应用户动作了。 用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。 下面简单介绍一下我学习ASP的方法,希望对想学习ASP的朋友有所帮助...
页:
[1]