功能不错的asp模板类代码附下载

2025-05-27 0 41

此类支持循环替换,支持嵌套循环替换,支持多模板。

类的代码就不贴不来啰嗦了,在后面有下载,只贴出demo的代码



一、模板只有一个循环块

模板文件主要代码

<head>

<metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/>

<title>{myname}模板-{webName}</title>

</head>



<body>

<tablewidth="500"border="0"cellspacing="0"cellpadding="0">

<!–begina_block–>

<tr>

<tdwidth="50"height="30">第一列</td>

<tdwidth="50"height="30">{tpl_1}</td>

<tdwidth="50"height="30">{tpl_2}</td>

</tr>

<!–enda_block–>

</table>

</body>

替换模板的代码

<%@LANGUAGE="VBSCRIPT"CODEPAGE="65001"%>

<!–#includefile="tplCls.asp"–>

<%

response.Charset="utf-8"

setnewTpl=newtpl

newTpl.setTpl="tpl.html"



newTpl.setVar"myname","一个块循环的"

newTpl.setVar"webName","亮亮的博客"



newTpl.setBlock="a_block"

fortt=0to2

newTpl.setBloVar"tpl_1","第二列_"&tt

newTpl.setBloVar"tpl_2","第三列_"&tt

newTpl.outBloVar

next

newTpl.outBlock"a_block"



newTpl.out

setnewTpl=nothing

%>







二、两个块循环,并且在一个模板中加载另一个模板

主模板文件主要代码

<title>{myname}模板-{webName}</title>

</head>



<body>

<tablecellspacing="2"border="1">

<tr><td>下面的动物您喜欢哪一种</td></tr>

<!–beginlist1–>

<tr><td><inputtype="radio"name="chk">{animal}</td></tr>

<trbgcolor="#3366FF"><tdheight="10"></td>

</tr>

<!–endlist1–>

<!–beginlist2–>

<tr><td><inputtype="radio"name="chk">{animal2}</td></tr>

<trbgcolor="#3366FF"><tdheight="10"></td>

</tr>

<!–endlist2–>

<tr><tdcolspan="2">{PageNo}</td></tr>

</table>

</body>

副模板文件主要代码

<tablewidth="500"border="0"cellspacing="0"cellpadding="0">

<tr>

<tdheight="30">这是嵌套进来的模板</td>

</tr>

<tr>

<tdheight="30"><!–begininList–>{inStr}<!–endinList–></td>

</tr>

</table>

替换模板的代码

<%@LANGUAGE="VBSCRIPT"CODEPAGE="65001"%>

<!–#includefile="tplCls.asp"–>

<%

response.Charset="utf-8"

setnewTpl=newtpl

newTpl.setTpl="tpl2.html"



newTpl.setVar"myname","两个块循环/嵌套的"

newTpl.setVar"webName","亮亮的博客"



newTpl.setBlock="list1"

fori=0to2

newTpl.setBloVar"animal","animal"&i

newTpl.outBloVar

next

newTpl.outBlock"list1"



newTpl.setBlock="list2"

form=0to2

newTpl.setBloVar"animal2","动物"&m

newTpl.outBloVar

next

newTpl.outBlock"list2"



'加载副模板

newTpl.setVarTpl"PageNo","inTpl.html"

'替换副模板中的内容

newTpl.setBlock="inList"

fork=0to3

newTpl.setBloVar"inStr","menu"&k

newTpl.outBloVar

next

newTpl.outBlock"inList"



newTpl.out

setnewTpl=nothing

%>







三、块里有嵌套的循环

模板文件主要代码

<title>{myname}模板-{webName}</title>

</head>



<body>

<tablewidth="400"border="1"bordercolor="#000000">

<tr><td><divalign="center">{myname}测试</div></td></tr>

<tr><td>动物:</td></tr>

<!–beginlist–>

<tr><td>{animal}</td></tr>

<!–beginlist_1–>

<tr><td>{plant}_{num}</td></tr>

<!–beginlist_1_1–>

<tr><td>{plant2}</td></tr>

<!–endlist_1_1–>

<!–endlist_1–>

<!–endlist–>

</table>

</body>

替换模板文件的代码

<%@LANGUAGE="VBSCRIPT"CODEPAGE="65001"%>

<!–#includefile="tplCls.asp"–>

<%

response.Charset="utf-8"

setnewTpl=newtpl

newTpl.setTpl="tpl3.html"



newTpl.setVar"myname","嵌套循环的"

newTpl.setVar"webName","亮亮的博客"



newTpl.setBlock="list"

fori=0to2

newTpl.setBloVar"animal","动物大类"&i

newTpl.outBloVar



newTpl.setBlock="list_1"

form=0to2

newTpl.setBloVar"plant","动物类"

newTpl.setBloVar"num",m

newTpl.outBloVar



newTpl.setBlock="list_1_1"

fork=0to1

newTpl.setBloVar"plant2","动物"&k

newTpl.outBloVar

next

newTpl.outInBlock"list_1","list_1_1"



newTpl.resetBlock="list_1"

next

newTpl.outInBlock"list","list_1"



'注意resetBlock的使用

newTpl.resetBlock="list"

next

newTpl.outBlock"list"



newTpl.out

setnewTpl=nothing

%>

注意resetBlock使用的地方,在块里还有循环的时候,在next之前用这个方法。



四、模板里有循环块没有单变量

模板文件主要代码

<title>模板-{webName}</title>

</head>



<body>

<tablewidth="400"border="1"bordercolor="#000000">

<tr><td><divalign="center">{myname}测试</div></td></tr>

<tr><td>看看测试</td></tr>

<!–beginlist–>

<tr><td>{animal}</td></tr>

<!–beginlist_1–>

<tr><td><!–beginlist_1_1–>{plant}<!–endlist_1_1–></td></tr>

<!–endlist_1–>

<tr><td>{animal2}</td></tr>

<!–endlist–>

<tr><td><divalign="center">{myname2}</div></td></tr>

</table>

</body>

注意在list_1块中没有像在list块中的animal这样的要替换的单变量



替换模板的代码

<%@LANGUAGE="VBSCRIPT"CODEPAGE="65001"%>

<!–#includefile="tplCls.asp"–>

<%

response.Charset="utf-8"

setnewTpl=newtpl

newTpl.setTpl="tpl4.html"



newTpl.setVar"myname","有一个块没有变量要替换的嵌套循环的"

newTpl.setVar"webName","亮亮的博客"



newTpl.setBlock="list"

fori=0to2

newTpl.setBloVar"animal","动物类别_"&i

newTpl.setBloVar"animal2","动物类别_"&i&"结束"

newTpl.outBloVar



newTpl.setBlock="list_1"

form=0to2

'list_1块里没有单变量要替换也要执行setBloVar和outBloVar,参数用空代替

newTpl.setBloVar"",""

newTpl.outBloVar



newTpl.setBlock="list_1_1"

fork=0to1

newTpl.setBloVar"plant","动物"&k

newTpl.outBloVar

next

newTpl.outInBlock"list_1","list_1_1"



newTpl.resetBlock="list_1"

next

newTpl.outInBlock"list","list_1"



newTpl.resetBlock="list"

next

newTpl.outBlock"list"

newTpl.setVar"myname2","测试结束"



newTpl.out

setnewTpl=nothing

%>

最后介绍一下类里的主要方法

newTpl.setTpl="tpl.html"设置主要模板文件

newTpl.setVar"myname","一个块循环的"替换模板文件中块之外的变量

newTpl.setVarTpl"PageNo","inTpl.html"用副模板文件替换单变量即加载副模板

newTpl.setBloVar"tpl_2","第三列_"&tt替换块里的变量

newTpl.outBloVar输入块里所有替换后的内容

newTpl.setBlock="a_block"设置循环快

newTpl.outBlock"a_block"输出循环块

newTpl.out输出所有

newTpl.resetBlock="list"这是个比较特殊的,若list块里还有要循环的块,在循环list块的代码的next之前要用它。

asp_tplClass.rar

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 功能不错的asp模板类代码附下载 https://www.kuaiidc.com/69734.html

相关文章

发表评论
暂无评论