`
happmaoo
  • 浏览: 4339841 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

如何使用ASP制作类似安装向导的页面?

阅读更多

如何使用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="VBSCRIPT %>
<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 = ""
%>

转自: http://goaler.xicp.net/Article/ShowArticle.asp?ID=269

分享到:
评论

相关推荐

    web安装向导-开源

    自定义的一个可扩展的,类似于wordpress安装页面的asp.net实现,内部为源码

    使用InstallShield制作ASP安装程序(6) asp教程

    使用InstallShield制作ASP安装程序(6) asp教程,电脑教程,软件教程,学网.htm 【转帖】用InstallShield进行ASP软件的打包和自动安装 - 项目脚本 - 中国软件打包技术论坛 installshield 1220082009中文教程wise打包...

    简单使用bootstrap制作ASP.NET的登录页面

    简单使用bootstrap制作ASP.NET的登录页面,文章见http://blog.csdn.net/dhywjx/article/details/79507142

    asp.net向导实例

    用ASP.net2.0向导控件做的一个用户注册的例子。 网上对向导控件的应用例子很少,所以我做了这个demo。 只是简单的demo,很多复杂逻辑需要自己完善。

    使用InstallShield制作ASP安装程序

    使用InstallShield制作ASP安装程序,这个资料在网上比较少,收集一下,放上来给大家分享。

    asp.net 制作的注册页面

    自己制作的,界面比较可爱,你可以把background-image给换了,还有字体。希望对你有帮助吧 。

    使用Installshield制作asp,asp.net应用的安装程序

    使用Installshield制作asp,asp.net应用的安装程序

    asp.net登录页面设计

    在Visual Studio中创建ASP.NET项目 所有页面要求采用代码后置的编码方式 在项目中添加登录页面login.aspx,效果见下图 实现没有登录重定向到登录页面login.aspx 用户首次登录网站给出用户名和密码的输入...

    panel制作注册页面

    asp.net使用panel制作注册页面!非常简单的注册页面,没有连接数据库。没有详细的制作过程,主要是制作后的效果!可以为你制作注册页面,提供一个思路!

    ASP中Web页面间的数据传递

    往往使用动态网页技术制作ASP应用程序时一般至少拥有二个或二个以上的Web页面,这时就得考虑在多个Web页面间传递数据的处理工作。而ASP应用 程序的各个页面类似于Windows应用程序的form窗体,Windows应用程序各form...

    完整的asp生成静态页面

    完整的asp生成静态页面 asp生成静态页面,包括数据的添加、删除、修改,webeditor的使用和一些简单的js的使用根目录下index.htm页面为生成的首页asp文件夹 index.htm为后台操作页面 createhtml.asp为生成所有新闻静态...

    ASP.NET C# 页面间数据传递

    Asp.Net较ASP最大的优点,也是其受到越来越多程序员的欢迎的主要原因就是,ASP.NET为开发者...本文就来介绍二种可以实现ASP.NET中各Web页面数据传递的方法:第一种方法是使用QueryString,第二种方法是使用Session。

    ASP.NET页面生命周期描述

    ASP.NET页面生命周期描述,介绍了页面是如何生成的,变量的生存周期

    使用代码内嵌的方式,在asp.net页面上输出九九乘法表,带细实线表格

    1、使用代码内嵌的方式,在asp.net页面上输出九九乘法表。 2、使用双重循环,外循环的for代码:for (int i = 1; i ; i++),内循环的for代码: for (int j = 1; j ; j++)。 3、使用外循环控制表格的行的输出,使用内...

    asp.net 中使用iframe动态加载页面

    asp.net 中使用iframe动态加载页面

    ASP批量生成静态页面教程

    ASP批量生成静态页面教程

    ASP.net使用说明

    • ASP 指 Active Server Pages (动态服务器页面) • ASP 是一项微软公司的技术 • ASP 是在 IIS 中运行的程序 • IIS 指 Internet Information Services (Internet 信息服务) • IIS 是 Windows 2000 及 ...

    ASP跳转页面的制作

    帮助那些初学网站的人,这个主要是制作记录及跳转页面的代码,希望能给你们一些帮助!!

    《ASP动态网站制作实例教程》课件打包下载

    教程名称:《ASP动态网站制作实例教程》课件打包下载课程目录:【】《ASP动态网站制作实例教程》第1章:Web基础知识【】《ASP动态网站制作实例教程》第2章:ASP的安装、配置和运行【】《ASP动态网站制作实例教程》第...

    ASP.NET制作的一个在线计算器

    一个用ASP.NET制作的小计算器,很实用,适合ASP.NET初学者。

Global site tag (gtag.js) - Google Analytics