仓酷云

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

[学习教程] ASP网站制作之仅用xsl和asp完成分页功效

[复制链接]
谁可相欹 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:34:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
当然了,现在国内CRM厂商的产品与其说是CRM,但从至少从我的角度分析上来看,充其量只是一个大型的进销存而已了,了解尚浅,不够胆详评,这里只提技术问题注重事项:
※本文代码大概有一些过剩部分未往失落,请在浏览时疏忽。
一些内部include出去的文件这里就不贴下去了。
※小乙写xsl也不久,良多语句都不会利用,有些中央写得对照罗嗦,
假如您有更好的分页代码,请多多拿来交换。
※合用于:用aspload出去xml代码,然后用此xsl文件举行分页处置。
※[2001.2.19]
------------------------------------
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[text()!=]">
<!--进进一级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>
&#91;首&#93;</a>
<atitle="前一页"><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-of
select="$size*2"/></xsl:attribute>&#91;&#60;&#60;&#60;&#93;</a>
<atitle="后一页">&#91;&#62;&#62;&#62;&#93;</a>
<a>&#91;尾&#93;</a>
</xsl:when>
<!--②id位于[0~pagesize]之间的情形,前页一般,后页无。-->
<xsl:whentest="$pid<($size+1)and$pid>0">
<a><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="count
(//PO)"/></xsl:attribute>
&#91;首&#93;</a>
<atitle="前一页"><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-of
select="$pid+$size"/></xsl:attribute>&#91;&#60;&#60;&#60;&#93;</a>
<atitle="后一页">&#91;&#62;&#62;&#62;&#93;</a>
<a>&#91;尾&#93;</a>
</xsl:when>
<!--③id位于[pagesize~count]之间的情形,前页无,后页一般。-->
<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>
&#91;首&#93;</a>
<atitle="前一页"><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="count
(//PO)"/></xsl:attribute>&#91;&#60;&#60;&#60;&#93;</a>
<atitle="后一页"><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="$pid-
$size"/></xsl:attribute>&#91;&#62;&#62;&#62;&#93;</a>
<a><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="$size"/></xsl:attribute>
&#91;尾&#93;</a>
</xsl:when>

<!--④id即是count的情形,显现首页。-->
<xsl:whentest="$pid=count(//PO)">
<a>&#91;首&#93;</a>
<atitle="前一页">&#91;&#60;&#60;&#60;&#93;</a>
<atitle="后一页"><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="count
(//PO)-$size"/></xsl:attribute>&#91;&#62;&#62;&#62;&#93;</a>
<a><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="$size"/></xsl:attribute>
&#91;尾&#93;</a>
</xsl:when>
<!--⑤id年夜于count的情形,显现首页。-->
<xsl:whentest="$pid>count(//PO)">
<a>&#91;首&#93;</a>
<atitle="前一页">&#91;&#60;&#60;&#60;&#93;</a>
<atitle="后一页"><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="count
(//PO)-$size"/></xsl:attribute>&#91;&#62;&#62;&#62;&#93;</a>
<a><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="$size"/></xsl:attribute>
&#91;尾&#93;</a>
</xsl:when>

<!--一般情形-->
<xsl:otherwise>
<a><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="count
(//PO)"/></xsl:attribute>
&#91;首&#93;</a>
<atitle="前一页"><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="$pid+
$size"/></xsl:attribute>&#91;&#60;&#60;&#60;&#93;</a>
<atitle="后一页"><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="$pid-
$size"/></xsl:attribute>&#91;&#62;&#62;&#62;&#93;</a>
<a><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="$size"/></xsl:attribute>
&#91;尾&#93;</a>
</xsl:otherwise>
</xsl:choose>
<!-------------------------------------------->
</td>
</tr>
</table><br/>
<!-----------遍历切合请求的PO结点--------------->
<xsl:for-eachselect="PO[position()<=$pidandposition()>($pid-$size)]">
<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>&#91;首&#93;</a>
<atitle="前一页">&#91;&#60;&#60;&#60;&#93;</a>
<atitle="后一页"><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="$pid-
$size"/></xsl:attribute>&#91;&#62;&#62;&#62;&#93;</a>
<a><xsl:attributename="href">search_jieguo.asp?id=<xsl:value-ofselect="$size"/></xsl:attribute>
&#91;尾&#93;</a>
</td></tr>
</table><br/>
<xsl:for-eachselect="PO[position()<=$pidandposition()>($pid-$size)]">
<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则处于劣势.这可能与公司的支持以及技术的培训有关.
变相怪杰 该用户已被删除
沙发
发表于 2015-1-19 16:30:23 | 只看该作者
我认为比较好的方法是找一些比较经典的例子,每个例子比较集中一种编程思想而设计的。
再现理想 该用户已被删除
板凳
发表于 2015-1-27 05:35:11 | 只看该作者
ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这就明显产生以下几个问题:
小女巫 该用户已被删除
地板
发表于 2015-2-5 02:40:08 | 只看该作者
学习是为了用的,是为了让你的程序产生价值,把握住这个原则会比较轻松点。除此之外,课外时间一定要多参加一些社会实践活动,来锻炼自己的能力。
精灵巫婆 该用户已被删除
5#
发表于 2015-2-11 02:52:34 | 只看该作者
跟学别的语言一样,先掌握变量,流程控制语句(就是ifwhileselect)等,函数/过程,数组
灵魂腐蚀 该用户已被删除
6#
发表于 2015-3-1 19:58:20 | 只看该作者
在平时的学习过程中要注意现学现用,注重运用,在掌握了一定的基础知识后,我们可以尝试做一些网页,也许在开始的时候我们可能会遇到很多问题,比如说如何很好的构建基本框架。
老尸 该用户已被删除
7#
发表于 2015-3-10 22:57:35 | 只看该作者
ASP主要是用好六个对象,其实最主要的是用好其中两个:response和request,就可以随心所欲地控制网页变换和响应用户动作了。
小妖女 该用户已被删除
8#
发表于 2015-3-17 15:50:02 | 只看该作者
用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。
谁可相欹 该用户已被删除
9#
 楼主| 发表于 2015-3-24 10:22:47 | 只看该作者
下面简单介绍一下我学习ASP的方法,希望对想学习ASP的朋友有所帮助...
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-12-24 04:14

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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