手机
当前位置:查字典教程网 >脚本专栏 >ColdFusion >Coldfusion MX PageList之骨灰版
Coldfusion MX PageList之骨灰版
摘要:你要的功能都在这里,注意是PAGELIST,这是CCF核心代码之一,相信能比我这代码还少的PAGELIST少了.功能绝对没有打折扣.包括pa...

你要的功能都在这里,注意是PAGELIST,这是CCF核心代码之一,相信能比我这代码还少的PAGELIST少了.功能绝对没有打折扣.包括pagelist首页/末页,上页/下页,页码可以设置显示数字多少,这避免了数量一多起来把pagelist拉的好长....

在调用PAGELIST的源文件中定义下面这些变量:

<cfsetrowsperpage=10><--->

<cfparamname="URL.startrow"default="1"type="numeric">

<cfsettotalrows=newarticle.Recordcount>

<cfsetendrow=Min(URL.startrow+rowsperpage-1,totalrows)>

<cfsetstartRowNext=endrow+1>

<cfsetstartrowBack=URL.startrow-rowsperpage>

Pagelist代码:可以保持成一个网页,然后插入到你要显示的地方就可以了.把里面的查询变量名修改成你自己的查询变量名就可以了.

<cfsettingenablecfoutputonly="Yes"><->

<cfparamname="page"default=1type="numeric"><->

<cfparamname="n"default=7type="numeric"><->

<cfsetmin=page-Int(n/2)>

<cfsetmax=page+Int(n/2)>

<cfifminLT1>

<cfsetmax=max-(min-1)>

<cfsetmin=1>

</cfif>

<cfifmaxGTCeiling(newarticle.recordcount/rowsPerPage)>

<cfsetmin=min-(max-Ceiling(newarticle.recordcount/rowsPerPage))>

<cfsetmax=Ceiling(newarticle.recordcount/rowsPerPage)>

</cfif>

<cfifminlt1>

<cfsetmin=1>

</cfif>

<>

<cfifpageNEQ1>

<cfoutput>

<ahref="#CGI.SCRIPT_NAME#?StartRow=1&Page=1"title="首页"><<</a>

</cfoutput>

</cfif>

<>

<cfloopindex="x"from="#min#"to="#max#">

<cfsetnextpage=x*rowsperpage-(rowsperpage-1)>

<cfoutput>

<cfifpageeqx>[#x#]<cfelseifnextpageLTEnewarticle.recordcount>

<ahref="#CGI.SCRIPT_NAME#?StartRow=#nextpage#&Page=#x#">#x#</a>

</cfif>

</cfoutput>

</cfloop>

<>

<cfsetlaststartrow=newarticle.recordcount-rowsPerPage+1>

<cfifpageNEQMAX>

<cfoutput>

<ahref="#CGI.SCRIPT_NAME#?StartRow=#laststartrow#&Page=#Ceiling(newarticle.recordcount/rowsPerPage)#">>></a>

</cfoutput>

</cfif>

<>

<cfoutput>

<CFIFstartrowBackGT0>

<cfifpageEQ1>

<CFSETNTback=1>

<cfelse>

<cfsetNTback=page-1>

</cfif>

<ahref="#CGI.SCRIPT_NAME#?startrow=#startrowback#&page=#NTback#">上一页</a>

</CFIF>

<CFIFstartrownextLTEtotalrows>

<cfsetNTnext=page+1>

<ahref="#CGI.SCRIPT_NAME#?startrow=#startrownext#&page=#NTnext#">下一页</a>

</CFIF>

</cfoutput>

<cfsettingenablecfoutputonly="no"><->

代码拷贝框

以下是引用片段:

<cfsettingenablecfoutputonly="Yes"><->

<cfparamname="page"default=1type="numeric"><->

<cfparamname="n"default=7type="numeric"><->

<cfsetmin=page-Int(n/2)>

<cfsetmax=page+Int(n/2)>

<cfifminLT1>

<cfsetmax=max-(min-1)>

<cfsetmin=1>

</cfif>

<cfifmaxGTCeiling(newarticle.recordcount/rowsPerPage)>

<cfsetmin=min-(max-Ceiling(newarticle.recordcount/rowsPerPage))>

<cfsetmax=Ceiling(newarticle.recordcount/rowsPerPage)>

</cfif>

<cfifminlt1>

<cfsetmin=1>

</cfif>

<>

<cfifpageNEQ1>

<cfoutput>

<ahref="#CGI.SCRIPT_NAME#?StartRow=1&Page=1"title="首页"><<</a>

</cfoutput>

</cfif>

<>

<cfloopindex="x"from="#min#"to="#max#">

<cfsetnextpage=x*rowsperpage-(rowsperpage-1)>

<cfoutput>

<cfifpageeqx>[#x#]<cfelseifnextpageLTEnewarticle.recordcount>

<ahref="#CGI.SCRIPT_NAME#?StartRow=#nextpage#&Page=#x#">#x#</a>

</cfif>

</cfoutput>

</cfloop>

<>

<cfsetlaststartrow=newarticle.recordcount-rowsPerPage+1>

<cfifpageNEQMAX>

<cfoutput>

<ahref="#CGI.SCRIPT_NAME#?StartRow=#laststartrow#&Page=#Ceiling(newarticle.recordcount/rowsPerPage)#">>></a>

</cfoutput>

</cfif>

<>

<cfoutput>

<CFIFstartrowBackGT0>

<cfifpageEQ1>

<CFSETNTback=1>

<cfelse>

<cfsetNTback=page-1>

</cfif>

<ahref="#CGI.SCRIPT_NAME#?startrow=#startrowback#&page=#NTback#">上一页</a>

</CFIF>

<CFIFstartrownextLTEtotalrows>

<cfsetNTnext=page+1>

<ahref="#CGI.SCRIPT_NAME#?startrow=#startrownext#&page=#NTnext#">下一页</a>

</CFIF>

</cfoutput>

<cfsettingenablecfoutputonly="no"><->

GAMEOVER.

说明一下上面没有注释的几段控制语句:

<cfparamname="n"default=7type="numeric">

这里设置默认为7,也就是当你在浏览12条的记录的时候,会显示91011[12]131415

数一下,是不是7条,这是重要的一部分,你也可以设置为双数,但是效果不会怎么好,不平衡了.

另外上面还有自动隐藏的功能.例如我在最后一页了,不会出现末页和下一页.

再次提醒一下:你必须把你自己的查询变量名替换newarticle.recordcount这个我设置的变量名.最好用查找/替换一次全部换掉.

【Coldfusion MX PageList之骨灰版】相关文章:

Coldfusion MX技巧精华收集(1)第1/5页

ColdFusionMX 编程指南 基础管理操作以及入门程

收藏的ColdFusionMX应用技巧及问题集

ColdfusionMX与FlashMX通讯的方法

ColdFusion MX 远程服务实例入门教程

Coldfusion MX技巧精华收集之2第1/6页

盘点5款为iOS8通知中心而生的应用

iphone6 plus输入法设置方法

ColdFusionMX 编程指南 ColdFusionMX编程入门

iOS8.1.3beta版新功能详解:支持2/3/4G自行切换

精品推荐
分类导航