• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 如何使用ASP制作類似安裝向導的頁面?

    發表于:2007-07-14來源:作者:點擊數: 標簽:
    如何使用ASP制作類似安裝向導的頁面? 面臨的主要問題何在: 1。界面和一個 Windows Wizard完全一樣,有Next和Back按鈕 2。用戶可以使用Back按鈕回到以前的任何一步,并且能夠改變以前任何一步中已經選擇的內容 3。form必須記住所有填入的內容 4。不能夠使用

    如何使用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://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>