频道直达 - 学院 - 下载 - 交易 - 特效 - 字库 - 手册 -排名-工具- 繁體
网页教学网站开发 设为首页
加入收藏
联系我们
建站搜索: 常用广告代码   用户注册 | 用户登陆
您当前的位置:中国建站之家 -> 网站开发设计技术教程 -> asp教程 -> 如何使用ASP产生象安装向导的主页

如何使用ASP产生象安装向导的主页

作者:未知  来源:转载  发布时间:2005-7-20 11:54:40  发布人:acx

减小字体 增大字体

  如何使用ASP产生象安装向导的主页
   
      面临的主要问题何在:
   
    1。界面和一个Windows Wizard完全一样,有Next和Back按钮
    2。用户可以使用Back按钮回到以前的任何一步,并且能够改变以前任何一步中已经选择的内容
    3。Form必须记住所有填入的内容
    4。不能够使用数据库
    5。不能够使用Sessions,防止如果Sessiosn失效后用户的所有输入丢失,不幸的是,也不能够使用cookie
    因为很多拥护经常关掉浏览器的Cookie选项。
    6。可移植性要好,因为它要适应安装步数不同时的情况
   
      解决方案:
    1。使用hidden变量传递参数
    2。使用POST方式,不使用GET方式,因为这种方式受长度限制
    3。每一个页面都必须有一个用来读取提交值的函数
    4。每一个页面(除了第一个页面外)都必须要有一个hidden form
    来向前一页传递参数
   
   
      如果在你的页面中使用了Checkboxes或则使用了radio buttons,请使用以下代码读数值:
    <% For Each Item in Request.Form
    If Request.Form(Item).Count Then
    For intLoop = 1 to Request.Form(Item).Count
    Response.Write "Item = " & Item & " Index = " & intLoop
    & "<BR>"
    Next
    Else
    Response.Write "Item = " & Item & "<BR>"
    End If
    Next
    %>
   
      在设计是,对checkboxes和radio采用了特殊的处理方法:
    1。只有最新的数值才被考虑使用这两种方式保存
    2。用户可以使用Back来改变前面输入的数值,但必须要使用Next提交后才能够生效
    3。页面必须要能够应付一个页面有多个controls的情况
   
      具体实现方法:
    第N个页面应该有:
    1。第一个form:它的ACTION= page(N+1).asp和它底部必须有Next按钮
    2。第二个form:它的ACTION= page(N-1).asp和Back按钮
    3。变量命名规则:举例:N_<page no> 后缀是控件类型. <INPUT TYPE
    = RADIO NAME = RADIO_P2>
    是表示第二页的一个name是radio的东西
    4。一个用来读取提交的函数
   
      页面根据一个循环来判断当前的控件是属于哪一页的。
    代码如下:
    <%@LANGUAGE="VBs cript %>
    <HTML>
    <HEAD>
    </HEAD>
    <BODY>
    <!-- NEXT按钮模块编程开始 -->
    <FORM ACTION="page03.asp" METHOD="POST" >
    <!------------------------------------------------------------->
    <!--读入函数开始 -->
    <!------------------------------------------------------------->
    <%
    pageno = "_P2"
    For Each Item in Request.Form
    WhichPage = InStr(1,CStr(Item), pageno,1)
    If ((Request.Form(Item).Count) AND (WhichPage = 0)) Then
    strCount = Request.Form(Item).Count
    strItem = Request.Form(Item)(strCount)
    Response.Write "<INPUT TYPE=""HIDDEN"" NAME="""
    & Item & """ VALUE=""" & strItem &
    """>" &VbCrLf
    ElseIf (NOT(Request.Form(Item).Count) AND (WhichPage = 0)) Then
    Response.Write "<INPUT TYPE=""HIDDEN"" NAME="""
    & Item & """ VALUE=""" & strItem &
    """>" &VbCrLf
    End If
    Next
    %>
    <!------------------------------------------------------------>
    <1-- 读入函数结束 -->
    <!------------------------------------------------------------>
   
    <!-- #include file = "Check_UnCheck.txt" -->
    <%
    Function Check_UnCheck(ctrlName, ctrlValue)
    Dim ctrlName_in
    Dim ctrlValue_in
    Dim ctrlValue_actual
    Dim outStr
   
    ctrlValue_in =""
    ctrlName_in = ""
    ctrlValue_actual = ""
    outStr = ""
    ctrlName_in = ctrlName_in & ctrlName
    ctrlValue_in = ctrlValue_in & ctrlValue
   
    If Request.Form(ctrlName_in).Count Then
    strCount = Request.Form(ctrlName_in).Count
    ctrlValue_actual = Request.Form(ctrlName_in)(strCount)
    If ctrlValue_actual = ctrlValue_in Then
    outStr = "CHECKED"
    End If
    Else
    ctrlValue_actual = Request.Form(ctrlName_in)
    If ctrlValue_actual = ctrlValue_in Then
    outStr = "CHECKED"
    End If
    End If
    Check_UnCheck = outStr
    End Function
    %>
   
    <!-- Back按钮模块开始 -->
   
    <%
    strItem1 = ""
    strItem1a = ""
    For Each Item1 in Request.Form
    If Request.Form(Item1).Count Then
    strCount1 = Request.Form(Item1).Count
    strItem1 = Request.Form(Item1)(strCount1)
    Response.Write "<INPUT TYPE=""HIDDEN"" NAME="""
    & Item1 & """ VALUE=""" & strItem1 &
    """>" &VbCrLf
    strCount1 = ""
    strItem1 = ""
    Else
    strItem1a = Request.Form(Item1)
    Response.Write "<INPUT TYPE=""HIDDEN"" NAME="""
    & Item1 & """ VALUE=""" & strItem1a &
    """>" &VbCrLf
    End If
    Next
   
    strItem1 = ""
    strItem1a = ""
    %>

将本文收藏到QQ书签与更多好友分享
[打 印]
[] [返回上一页] [收 藏]
∷相关文章评论∷    (评论内容只代表网友观点,与本站立场无关!) [更多评论...]
精彩推荐
热门文章
· 注册码大全二
· 注册码大全四
· 注册码大全一
· 要10G免费网络硬盘的请进..
· 通过google 赶快来赚美金..
· 注册码大全十
· 头像-qq头像(qq新头像)4..
· 让你轻松架设FTP服务器1..
· 注册码大全三
· 梦幻背景图片7
· 卡通动物图片6
· 网页制作素材-按钮素材2..
· 让你轻松架设FTP服务器5..
· 风景图片8
· 注册码大全九
· 让你轻松架设FTP服务器2..
关注此文读者还看过
· 使用Tree组件制作树形菜..
· Flash MX Action 简易手..
· 用Linux架设FTP服务器(下..
· Creole :新兴数据抽象层..
· 提高访客的用户体验 合理..
· FlashMX经典实例(2)
· Fireworks8绘制神秘的太..
· 一种函数的计算方法并给..
· OnClipEvent影片事件 (F..
· load的时候让dropdownli..
· 推广技巧:发帖推广注意..
· 什么才是提高ASP性能的最..
· 百度搜歌一审被判未侵权..
· 国家版权局亮剑网络下载..
· 超级服务器apache+mysql..
· CSS属性(字体属性)
相关文章
· 国外译文:网页设计如何使用..
· 在PHP网站开发中如何使用co..
· 在PHP开发中如何使用Sessio..
· 如何使用SQL Server中的客户..
· 教你如何使用搜索引擎谋扩张..
· 网页开发如何使用HTTPS
· XML学习:应当如何使用XML语..
· XML学习:应当如何使用XML语..
· 建站常识:如何使用FTP连接..
· 网页设计中如何使用嵌..
· ado如何使用sql函数?
· ADO如何使用Delete语法
· ADO如何使用Update语法
· 如何使用 Microsoft Access..
· 要如何使用 ASP Error 组件..
· 如何使用ASP制作模似动态生..
关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图 - 人才招聘
网站合作、内容监督、商务咨询:QQ: 9576619
Copyright ? 2005--2008 中国建站之家版权所有
粤ICP备05092265号