Asp模板标签如何实现循环
functionreadate(tops,orders)exec="selecttop"&tops&"*from[guestbook]orderby["&orders&"...
function readate(tops,orders)
exec="select top "&tops&" * from [guestbook] order by ["&orders&"]"
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1
do while not rs.eof
str=str&rs("class_name")
rs.movenext
loop
readate=strs
end function
以上代码已实现标签化,可在模板中用{class:10,"id"}调用,但调用出来后虽然是循环输出的,但无法在每个循环都加上div css,当然样式是自定的,所以样式不能加到function中,那怎么才能改成loop标签,如<loop><div class="myclass">{class:10,"id"}</div><end loop>高手赐教,解决加分,直接回答代码
谢谢楼下,但没明白我的意思,因为div不是固定的,有可能是<span>! 展开
exec="select top "&tops&" * from [guestbook] order by ["&orders&"]"
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1
do while not rs.eof
str=str&rs("class_name")
rs.movenext
loop
readate=strs
end function
以上代码已实现标签化,可在模板中用{class:10,"id"}调用,但调用出来后虽然是循环输出的,但无法在每个循环都加上div css,当然样式是自定的,所以样式不能加到function中,那怎么才能改成loop标签,如<loop><div class="myclass">{class:10,"id"}</div><end loop>高手赐教,解决加分,直接回答代码
谢谢楼下,但没明白我的意思,因为div不是固定的,有可能是<span>! 展开
展开全部
从函数readate的代码和标签看,readate应该就是替换函数标签的主程序吧?
那么要写成<loop><div class="myclass">{class:10,"id"}</div><end loop>这样的,恐怕不行,因为替换时直接把{class:10,"id"}替换掉了,而且替换的时候已经循环过了。
还有,你程序里有替换<loop><end loop>的现成代码吗?有的话贴出来看看。
没有的话,我觉得可以改一下readate这个函数,增加两个参数,分别来定义class前后的html代码。
然后,标签这么改:{class:10,"id",“<div class=‘myclass’>”,"</div>"}
替换程序里再把传入的参数值写到循环体里面:
function readate(tops,orders,s1,s2)
exec="select top "&tops&" * from [guestbook] order by ["&orders&"]"
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1
do while not rs.eof
str=str&s1&rs("class_name")&s2
rs.movenext
loop
readate=strs
end function
那么要写成<loop><div class="myclass">{class:10,"id"}</div><end loop>这样的,恐怕不行,因为替换时直接把{class:10,"id"}替换掉了,而且替换的时候已经循环过了。
还有,你程序里有替换<loop><end loop>的现成代码吗?有的话贴出来看看。
没有的话,我觉得可以改一下readate这个函数,增加两个参数,分别来定义class前后的html代码。
然后,标签这么改:{class:10,"id",“<div class=‘myclass’>”,"</div>"}
替换程序里再把传入的参数值写到循环体里面:
function readate(tops,orders,s1,s2)
exec="select top "&tops&" * from [guestbook] order by ["&orders&"]"
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1
do while not rs.eof
str=str&s1&rs("class_name")&s2
rs.movenext
loop
readate=strs
end function
更多追问追答
追问
哎。我目的就是不要把样式写入函数中,要是写到函数中的话,就像你的代码我也能做出来。一定要把样式写到外面。所以我就搞不定了。非常感谢你的回答。如果改函数要怎么改才可以用我那样的格式。标签暂时还没有。
追答
{class:10,"id",“",""}
这样算不算把样式放在外面?如果不是,那你说的又是什么样的?
我那样改,模板里就可以不受限制了,可以用div,也可以用span,而且样式名也可以变化,如:
{class:10,"id",“",""}
展开全部
function readate(tops,orders,classname)
exec="select top "&tops&" * from [guestbook] order by ["&orders&"]"
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1
do while not rs.eof
str=str&“<div class="""&classname&""">”&rs("class_name")&"</div>"
rs.movenext
loop
readate=strs
end function
调用采用{class:10,"id",“myclass”}
exec="select top "&tops&" * from [guestbook] order by ["&orders&"]"
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1
do while not rs.eof
str=str&“<div class="""&classname&""">”&rs("class_name")&"</div>"
rs.movenext
loop
readate=strs
end function
调用采用{class:10,"id",“myclass”}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询