当前位置: 首页 > 图文教程 > 网络编程 > ASP > 从ASP迁移至ASP+ --转换其他的页面

ASP
javascript css 三级目录(简单的)
asp下sql和access数据库随机取10条记录的代码newid()
新增加一个防垃圾评论的asp代码,鄙视垃圾
asp ADO GetString函数与用GetString来提高ASP的速度
windows2003下使用asp WScript.Shell的设置方法
asp UTF-8 乱码问题的解决方法小结
JavaScript面向对象的两种书写方法以及差别
响应对象 错误 ''ASP 0185 : 80020003'' 缺少默认属性
ASP生成伪参数程序设计技巧
asp中使用mysql数据库的注意实现
使用FSO修改文件夹的名称实现文件转移防盗链
asp下request.querystring("id")与request("id")区别
asp将全角的字符转变成半角字符,将半角转变成全角d的代码
asp创建表,复制表 字段类型附录
asp加密解密函数decrypt
asp获取当前网页地址的代码
asp下经常用到的代码
asp 的中文分词
修改正确的asp冒泡排序
rustysun同学ASP代码书写规范

从ASP迁移至ASP+ --转换其他的页面


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 194 ::
收藏到网摘: n/a

  至于剩余的页面,我们依样画葫芦,使用ASP+ DataList或是Repeater控件。这样做是必要的,因为按设计要求需要定制的数据布局,而不是一个标准的表格显示。其中有个页面,classcatalog.aspx,有一处要求勾选值,然后根据选中的值,运行两个可能输出中的一个。该页就利用了Repeater控件,因此我们显示地创建了表格的行与列,而没有让控件来完成这一切。这是在templates的内部完成的。在ASP中,看起来是这样子的:

   '检查是否提供优惠

   If rsSessions("Special") = True Then

   '若本课程提供优惠,则输出“Special Offer!”

   Response.Write "< td valign=top align=center>" & vbCrLf

   Response.Write "< a href=""classdetail.asp?SessionID="

   Response.Write rsSessions("SessionID")

   Response.Write """name=""Click for more detail"">"

   Response.Write "Special Offer!"

   Response.Write "< /td>"

   Else

   '若本课程不提供优惠,则在栏中输出"--"

   Response.Write "< td valign=top align=center>--< /td>"

   End If

   为了在ASP+中达到同样的效果,我们使用了一个函数。在脚本块中,位于Page_Load 事件下,我们创建以下代码:

   Function CheckSpecial(ByRef blnSpecial As Boolean, _

   ByRef intNumber As Integer) As String

   If blnSpecial = True Then

   CheckSpecial = "< a href=" & Chr(34) & _

   "classdetail.aspx?SessionID=" & _

   intNumber & Chr(34) & ">Special!!< /a>"

   Else

   CheckSpecial = "--"

   End If

   End Function

   然后只须从ASP+ Repeater中调用函数:

   < template name = "ItemTemplate">

   < tr>

   [ other data being displayed ]

   < td valign=top align=center>

   < %=CheckSpecial(Container.DataItem("Special"),

   Container.DataItem("Session_ID"))%>

   < /td>

   < /tr>

   < /template>

   Container指的是涉及我们的ASP+ Reapter控件的数据的父对象。通过调用Container.DataItem("Special")及Container.DataItem("Session_ID") ,将父对象(即ASP+ Repeater控件)中的列的值传递给了函数。