VBS教程:VBScript 與表單

來源:互聯網
上載者:User

VBScript 與表單簡單驗證

使用 Visual Basic Scripting Edition,您可以完成通常要在伺服器上進行的大量表單處理工作,也可以完成不能在伺服器上進行的工作。

這是一個簡單的用戶端驗證的範例。HTML 程式碼的結果是一個文字框和一個按鈕。如果使用 Microsoft(R) Internet Explorer 查看用以下代碼製作的頁面,您會看到一個旁邊帶有按鈕的小文字框。

<HTML><HEAD><TITLE>簡單驗證</TITLE><SCRIPT LANGUAGE="VBScript"> <!--Sub Validate  Dim TheForm  Set TheForm = Document.forms("ValidForm")  If IsNumeric(TheForm.Text1.Value) Then    If TheForm.Text1.Value < 1 Or TheForm.Text1.Value > 10 Then      MsgBox "請輸入一個 1  10 之間的數字。"    Else      MsgBox "謝謝。"    End If  Else    MsgBox "請輸入一個數字。"  End IfEnd Sub--></SCRIPT></HEAD><BODY><H3>簡單驗證</H3><HR><form id="ValidForm" action="nothing.asp" onsubmit="Validate(); return false;" language="Visual Basic Scripting Edition">請輸入一個 1  10 之間的數字:<input name="Text1" TYPE="TEXT" class='9v'><input name="Submit" TYPE="Submit" VALUE="提交"></form></BODY></HTML>

這個文字框與 VBScript 頁面的簡單範例中樣本的不同之處在於文字框的 Value 屬性被用於檢查輸入值。要使用文字框的 Value 屬性,代碼必須引用文字框的名稱。

每次引用文字框時都應寫出全稱,即 Document.ValidForm.Text1。但是,當多次引用表單控制項時,可以按照以下步驟操作:首先聲明一個變數,然後使用 Set 語句將表單 Document.ValidForm 賦給變數 TheForm,這樣就能使用 TheForm.Text1 引用文字框。常規的指派陳述式(例如 Dim)在這裡無效,必須使用 Set 來保持對對象的引用。

使用數字

請注意以上樣本直接檢測輸入值是否是一個數字:使用 IsNumeric 函數確定文字框中的字串是否是一個數字。雖然 VBScript 能夠自動轉換字串和數字,但檢測使用者輸入值的資料子類型,並且在必要時使用轉換函式始終是一個好的習慣。在用文字框的 Value 屬性進行加法運算時,應將它顯式地轉換為數字,這是因為加號 (+) 運算子不但可進行加法操作,而且可進行字串串連操作。例如,如果 Text1 中包含“1”,Text2 中包含“2”,您將會看到以下結果:

A = Text1.Value + Text2.Value      ' A 為“12A = CDbl(Text1.Value) + Text2.Value   ' A  3
驗證後將資料傳遞迴伺服器

簡單驗證範例使用的是普通按鈕控制項。如果使用 Submit 控制項,所有資料都會被立即傳送到伺服器,樣本將不會看到資料來進行檢查。避免使用 Submit 控制項使您可以檢查資料,但不能向伺服器提交資料。如果要提交資料則需要再添加一行代碼,如下所示:

<SCRIPT LANGUAGE="VBScript"> <!--Sub Button1_nClick  Dim TheForm  Set TheForm = Document.ValidForm  If IsNumeric(TheForm.Text1.Value) Then    If TheForm.Text1.Value < 1 Or TheForm.Text1.Value > 10 Then      MsgBox "請輸入一個 1  10 之間的數字。"    Else      MsgBox "謝謝。"      TheForm.Submit   ' 資料輸入正確,傳遞到伺服器。    End If  Else    MsgBox "請輸入一個數字。"  End IfEnd Sub--></SCRIPT>

在資料輸入正確時,代碼調用表單對象的 Submit 方法,將資料傳遞到伺服器。除非在資料被傳遞到伺服器之前判斷其正誤,否則伺服器將處理資料,而不論其正確與否。您可以在 Internet Explorer Scripting 物件模型頁面上找到關於 Submit 方法和其他方法的全部資訊,它們在 Microsoft(R) Web 網站(http://www.microsoft.com)上可以找到。

到目前為止,您只看到了標準 HTML <FORM> 對象。Internet Explorer 還可以使您利用 ActiveX(R) 控制項(以前稱為 OLE 控制項)和 Java(TM) 對象的全部功能建立頁面。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.