Microsoft® Visual Basic® Scripting Edition
VBScript 和表单
 VBScript 教学 
 上一页 | 下一页 

 

简单的确认
您可使用 Visual Basic Scripting Edition 处理许多您常在伺服器上执行的表单,同时也可以执行一些无法在伺服器上处理的工作。

这里有一个对客户端做简单确认的范例程式。这些 HTML 程式码用来产生一个文字方块和按钮。当您使用 Microsoft® Internet Explorer 4.0 来检视由下列程式码所产生的网页时,您将会看到一个小小的文字方块,同时紧接着一个按钮。

<HTML>
<HEAD><TITLE>简单的确认</TITLE>
<SCRIPT LANGUAGE="VBScript"> 
<!--
Sub Submit_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="Submit" TYPE="BUTTON" VALUE="传送">
</FORM>
</BODY>
</HTML>
这个文字方块和简单的 VBScript 网页上的范例之不同处,在於此文字方块的 Value 属性是用来检查输入值。程式码必须以文字方块名称的引用来取得 Value 属性。

您可以每次都写出完整的引用 Document.ValidForm.Text1。然而,当您有多重表单控制项的引用时,您就可以使用下面的方法。首先先宣告一个变数。然後使用 Set 陈述式指定一个表单给变数 TheForm。一般的指定陈述式,像是 Dim,在这里就无法使用;您必须用 Set 来保留对物件的引用。

简单的确认


输入 1 到 10 中的任一值:

使用数字值
请注意,这个范例是直接使用数字来测试该值:它使用 IsNumeric 函数来确认在文字方块中的字串是否为数字。虽然 VBScript 可以自动转换字串和数字,不过在测试使用者输入的值之前,先检查资料的子型态并依需要使用转换函数。当使用文字方块的数值来做加法运算时,数值会被精确地转换成数字。因为 (+) 运算子符号可以代表加法和字串连结。例如,假设 Text1 等於「1」,而 Text2 等於「2」,你会看到以下的结果:
A = Text1.Value + Text2.Value		' A is "12"
A = CDbl(Text1.Value) + Text2.Value		' A is 3

从伺服器确认与传回资料
以下为使用按钮控制项的简单确认范例。在这范例中,当您按下传送控制项时,将不会看到资料被检查,也就是说每一个动作将立即传送到伺服器中。若您在传送控制项中检查资料,它就不会将资料传送到伺服器。为了避免这种情形,需多加一行的程式码:
<SCRIPT LANGUAGE="VBScript"> 
<!--
Sub Submit_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	' Data correct; send to server.
    End If
  Else
    MsgBox "请输入数字!"
  End If
End Sub
-->
</SCRIPT>
当资料正确并要传送到伺服器时,程式码会呼叫在表格物件中的 Submit 方法。从那里,伺服器可以掌握到资料就如同从其他地方传来的一样(除非资料在传送前就是对的)。您可以在Internet Explorer Scripting 物件模型取得有关 Submit 方法和其它方法的完整资讯。

到此,你只看到了标准 HTML <FORM> 物件。Internet Explorer 4.0 也能让您完全发挥 ActiveX™ 控制项(先前称为 OLE 控制项)及 Java™ 物件的威力。


[an error occurred while processing this directive]