HOWTO: 如何跨網頁以 VBScript 維護狀態

文章翻譯 文章翻譯
文章編號: 157906 - 檢視此文章適用的產品。
1.00 1.10 2.00 WINDOWS kbprg kbhowto
全部展開 | 全部摺疊

在此頁中

結論

本文將說明三種維護使用 Visual Basic 指令碼版的 Web 網頁的狀態的方式。

以下是三種方法:
  • 指定替代 HREF Cookie。
  • 使用 Cookie,並將變更頁面的內容。
  • 使用框架,並將值儲存在最上層框架。

其他相關資訊

下面更詳細地說明三種方法。若要欲需範例來示範三種方法建立 HTML 檔案中每一節所述。您可以使用記事本或任何其他文字編輯器,建立檔案。

方法 1-將 Cookie 指派給替代 HREF

若要使用方法 1,您必須從 HTTP 伺服器讀取您的檔案。
   ******** Begin Page1-1.htm **********
   <HTML>

    <SCRIPT LANGUAGE="VBSCRIPT">
      Sub SetCookie
        document.cookie = "MyVar='101'; path='page1-2.htm'"
      End Sub
    </SCRIPT>
    <BODY>
      <H2>Page 1 - Method 1</H2><HR>
      <INPUT TYPE=BUTTON VALUE="Set Cookie" onClick="SetCookie">
      <A HREF="page1-2.htm">Go to Page 2</A>
    </BODY>

   </HTML>
   ******** End Page1-1.htm **********

   ******** Begin Page1-2.htm **********
   <HTML>

    <SCRIPT LANGUAGE="VBSCRIPT">
      Sub GetCookie
        MsgBox document.cookie
      End Sub
    </SCRIPT>
    <BODY>
      <H2>Page 2 - Method 1</H2><HR>
      <INPUT TYPE=BUTTON VALUE="Get Cookie" onClick="GetCookie">
    </BODY>

   </HTML>
   ******** End Page1-2.htm   **********
				
Page1-1.htm:
  • 按鈕的 onClick 事件會呼叫定義在頁面頂端的 SetCookie 副常式。
  • 副常式設定 Cookie 的值和 Cookie PATH。 在 PATH 是頁面的為設定值名稱。
  • [移至第 2 頁] 巡覽至第 2 頁錨點使用標準 HTML 語法。
Page1-2.htm:

  • 按鈕的 onClick 事件會呼叫定義在頁面頂端的 GetCookie 副常式。
  • 副常式會讀取來示範此變數設 Cookie 的值。

方法 2-使用 Cookie 以及變更頁面的內容

若要使用方法 2 您需要從 HTTP 伺服器讀取您的檔案。
   ******** Begin Page2-1.htm **********
   <HTML>

    <SCRIPT LANGUAGE="VBSCRIPT">
      Sub SetCookie
        document.cookie = "MyVar=101"
      End Sub

      Sub GotoNextPage
        location.href = "page2-2.htm"
      End Sub
    </SCRIPT>
    <BODY>
      <H2>Page 1 - Method 2</H2><HR>
      <INPUT TYPE=BUTTON VALUE="Set Cookie" onClick="SetCookie">
      <A HREF="" onClick="GotoNextPage">Go to Page 2</A>
    </BODY>

   </HTML>
   ******** End Page2-1.htm **********

   ******** Begin Page2-2.htm **********
   <HTML>

    <SCRIPT LANGUAGE="VBSCRIPT">
      Sub GetCookie
        MsgBox document.cookie
      End Sub
    </SCRIPT>
    <BODY>
      <H2>Page 2 - Method 2</H2><HR>
      <INPUT TYPE=BUTTON VALUE="Get Cookie" onClick="GetCookie">
    </BODY>

   </HTML>
   ******** End Page2-2.htm **********
				
Page2-1.htm:

  • 按鈕的 onClick 事件會呼叫定義在檔案頂端 SetCookie 副程式。
  • 副常式會設定目前網頁的 Cookie 的值。
  • 錨點 」 移至第 2 頁 」 呼叫定義在頁面頂端的 GotoNextPage 副常式。
  • 藉由設定 [HREF GotoNextPage 副程式瀏覽至第 2 頁位置物件的屬性。這會變更什麼目前頁面所指向而不需重設 Cookie。
Page2-2.htm:

  • 按鈕的 onClick 事件會呼叫定義在頁面頂端的 GetCookie 副常式。
  • 副常式會讀取來示範此變數設 Cookie 的值。

方法 3-使用框架,並將值儲存在最上層框架

   ******** Begin Page3-1.htm **********
   <HTML>

    <SCRIPT LANGUAGE="VBSCRIPT">
      Dim MyVar
    </SCRIPT>

    <FRAMESET COLS="50%,50%">
      <FRAME SRC="page3-2.htm">
      <FRAME SRC="page3-3.htm">
    </FRAMESET>

   </HTML>
   ******** End Page3-1.htm **********

   ******** Begin Page3-2.htm **********
   <HTML>

    <SCRIPT LANGUAGE="VBSCRIPT">
      Sub SetVariable
        top.MyVar = 101
      End Sub
    </SCRIPT>
    <BODY>
      <H2>Page 1 - Method 3</H2><HR>
      <INPUT TYPE=BUTTON VALUE="Set Variable" onClick="SetVariable">
    </BODY>
   </HTML>
   ******** End PAGE3-2.HTM **********

   ******** Begin Page3-3.htm **********
   <HTML>

    <SCRIPT LANGUAGE="VBSCRIPT">
      Sub GetVariable
        MsgBox top.MyVar
      End Sub
    </SCRIPT>
    <BODY>
      <H2>Page 2 - Method 3</H2><HR>
      <INPUT TYPE=BUTTON VALUE="Get Variable" onClick="GetVariable">
    </BODY>

   </HTML>
   ******** End Page3-3.htm **********
				
Page3-1.htm:

  • 定義變數。因為定義變數以外的任何副程式,將會存取到所有的子框架。
Page3-2.htm:

  • 按鈕的 onClick 事件會呼叫定義在檔案頂端 SetVariable 副程式。
  • 副常式會在最上層框架中設定變數的值。它會使用變數指的是最上層框架的 TOP。
Page3-3.htm:

  • 按鈕的 onClick 事件會呼叫定義在頁面頂端的 GetVariable 副常式。
  • 副常式會讀取最上層框架中變數的值。

?考

如需有關 Microsoft Internet Explorer 開發 Web 為基礎的解決方案的詳細資訊,請造訪下列 Microsoft 網站:
http://msdn.microsoft.com/ie/

http://support.microsoft.com/iep

屬性

文章編號: 157906 - 上次校閱: 2006年5月11日 - 版次: 3.0
這篇文章中的資訊適用於:
  • Visual Basic Scripting 版 2.0
  • Microsoft Visual Basic Scripting 版 1.1
關鍵字:?
kbmt kbfaq kbhowto kbscript KB157906 KbMtzh
機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:157906
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。
依現狀不再更新的知識庫內容免責聲明
本文旨在說明 Microsoft 不再提供支援的產品。因此,本文係依「現狀」提供,不會再更新。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com