當前位置:開發者網絡 >> 技術教程 >> ASP教程 >> ASP應用 >> 內容
精彩推薦
分類最新教程
分類熱點教程
    
vbscript起步——與窗體的交互,函數的調用
作者:未知
日期:2005-04-26
人氣:
投稿:(轉貼)
來源:未知
字體:
收藏:加入瀏覽器收藏
以下正文:
 

首先我們看這樣一段代碼:
<HTML>
<HEAD><TITLE>一個簡單首頁</TITLE>
<SCRIPT LANGUAGE="VBScript">
<!--
Sub Button1_OnClick
MsgBox "歡迎光臨"
End Sub
-->
</SCRIPT>
</HEAD>
<BODY>
<H3>一個簡單首頁</H3><HR>
<FORM><INPUT NAME="Button1" TYPE="BUTTON" VALUE="單擊此處"></FORM>
</BODY>
</HTML>
這實現的是 當點擊按鈕時,彈出消息框,顯示 歡迎光臨
其中
sub 定義一個過程,過程名包含兩部分:
button1 為按鈕名(從<INPUT> 標記中的 NAME 屬性獲取)
onclick 是事件名,即button1的onclick事件其中兩部分用(_)連接
合起來實現的是,單擊按鈕,Internet Explorer 查找並運行相應的事件過程,即 Button1_OnClick

<INPUT NAME="Button1" TYPE="BUTTON"
VALUE="單擊此處" OnClick='MsgBox "歡迎光臨"'>
函數調用包含在單引號中,MsgBox 函數的字符串包含在雙引號中。只要用冒號 (:) 分隔語句,就可以使

用多條語句。

<SCRIPT LANGUAGE="VBScript" EVENT="OnClick" FOR="Button1">
<!--
MsgBox "歡迎光臨"
-->
</SCRIPT>
這種方法在<SCRIPT> 標記指定了事件和控件,所以不需要再用 Sub 和 End Sub 語句

進一步實現簡單驗證
<HTML>
<HEAD><TITLE>簡單驗證</TITLE>
<SCRIPT LANGUAGE="VBScript">
<!--
Sub button1_OnClick
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 "謝謝。"
End If
Else
MsgBox "請輸入一個數字。"
End If
End Sub
-->
</SCRIPT>
</HEAD>
<BODY>
<H3>簡單驗證</H3><HR>
<FORM NAME="ValidForm">
請輸入一個 1 到 10 之間的數字:
<INPUT NAME="Text1" TYPE="TEXT" SIZE="2">
<INPUT NAME="button1" TYPE="BUTTON" VALUE="提交">
</FORM>
</BODY>
</HTML>
這個文本框與 VBScript 頁面的簡單樣例中文本框的 Value 屬性被用於檢查輸入值。要使用文本框的

Value 屬性,代碼必須引用文本框的名稱。

每次引用文本框時都應寫出全稱,即 Document.ValidForm.Text1。但是,當多次引用窗體控件時,可以

按照以下步驟操作:首先聲明一個變量,然後使用 Set 語句將窗體 Document.ValidForm(form的id)

賦給變量 TheForm,這樣就能使用 TheForm.Text1 引用文本框。常規的賦值語句(例如 Dim)在這裡無

效,必須使用 Set 來保持對對象的引用。

進一步實現 驗證後將數據傳遞回服務器

<HTML>
<HEAD><TITLE>簡單驗證</TITLE>
<<SCRIPT LANGUAGE="VBScript">
<!--
Sub button1_OnClick
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 If
End Sub
-->
</SCRIPT>
</HEAD>
<BODY>
<H3>簡單驗證</H3><HR>
<FORM NAME="ValidForm" action="要提交到的頁">
請輸入一個 1 到 10 之間的數字:
<INPUT NAME="Text1" TYPE="TEXT" SIZE="2">
<INPUT NAME="button1" TYPE="BUTTON" VALUE="提交">
</FORM>
</BODY>
</HTML>
sub中 TheForm.Submit 一句指出將form的內容上傳到服務器端
有以下幾點需要注意,我在測試的時候如果將NAME="button1" 改為NAME="submit"程序出錯,原因可能是

因為submit是一個保留字
同樣,如果TYPE="BUTTON" 改為TYPE="submit"那麼不管驗證結果如何,數據都將上傳到服務器端。


相關文章: