Microsoft® Visual Basic® Scripting Edition
VBScript und Formulare
VBScript-Tutorium 
 Zurück | Weiter

 

Einfache Gültigkeitsprüfung
Mit der Visual Basic Scripting Edition können Sie einen großen Teil der normalerweise auf einem Server anfallenden Formularverarbeitung durchführen. Ihnen stehen sogar Funktionen zur Verfügung, die auf dem Server überhaupt nicht verfügbar sind.

Es folgt ein Beispiel für einfache Gültigkeitsprüfung auf Client-Seite. Der HTML-Code realisiert ein Textfeld und eine Schaltfläche. Wenn Sie die von diesem Code erzeugte Seite mit dem Microsoft® Internet Explorer ansehen, erkennen Sie ein kleines Textfeld mit einer Schaltfläche daneben.


<HTML>
<HEAD><TITLE>Einfache Gültigkeitsprüfung</TITLE>
<SCRIPT LANGUAGE="VBScript"> 
<!--
Sub Uebermitteln_OnClick
  Dim DasFormular
  Set DasFormular= Document.gueltigesFormular
  If IsNumeric(DasFormular.Text1.Value) Then
    If DasFormular.Text1.Value < 1 Or DasFormular.Text1.Value > 10 Then
      MsgBox "Geben Sie einen Wert von 1 bis 10 ein."
    Else
      MsgBox "Vielen Dank."
    End If
  Else
    MsgBox "Bitte geben Sie einen numerischen Wert ein."
  End If
End Sub
-->
</SCRIPT>
</HEAD>
<BODY>
<H3>Einfache Gültigkeitsprüfung</H3><HR>
<FORM NAME="gueltigesFormular">
Bitte geben Sie einen Wert von 1 bis 10 ein: 
<INPUT NAME="Text1" TYPE="TEXT" SIZE="2">
<INPUT NAME="Uebermitteln" TYPE="BUTTON" VALUE="Übermitteln">
</FORM>
</BODY>
</HTML>

Der einzige Unterschied zwischen diesem Beispiel und den Beispielen unter "Eine einfache VBScript-Seite" besteht darin, daß die Value-Eigenschaft des Textfelds verwendet wird, um den eingegebenen Wert zu überprüfen. Um jedoch den Wert der Value-Eigenschaft zu erhalten, muß der Code den Verweis auf den Namen des Textfelds explizit angeben.

Sie können immer den vollständigen Verweis, Document.gueltigesFormular.Text1, ausschreiben. Wenn Sie jedoch mehrere Verweise auf Formular-Steuerelemente haben, sollten Sie besser das hier verwendete Verfahren einsetzen. Zunächst deklarieren Sie eine Variable. Dann verwenden Sie die Set-Anweisung, um der Variablen DasFormular das Formular zuzuweisen. Eine reguläre Zuweisung, wie z.B. Dim, würde hier nicht funktionieren: Sie müssen Set verwenden, um den Verweis auf ein Objekt zu erhalten.

Verwenden numerischer Werte
Beachten Sie, daß im Beispiel der Wert direkt mit einer Zahl verglichen wird. Mit Hilfe der IsNumeric -Funktion wird überprüft, ob die Zeichenfolge im Textfeld eine Zahl ist. Obwohl VBScript bei Bedarf automatisch Zeichenfolgen in Zahlen konvertiert, gehört es zum guten Programmierstil, einen vom Benutzer eingegebenen Wert auf dessen Untertyp hin zu überprüfen und bei Bedarf die Konvertierungsfunktionen einzusetzen. Außerdem sollten Sie beim Addieren von Werten in Textfeldern die Werte explizit in Zahlen konvertieren, weil das Pluszeichen ("+"-Operator) sowohl für Additionen als auch für Zeichenfolgenverkettungen verwendet werden kann. Wenn z.B. Text1 den Wert "1" und Text2 den Wert "2" enthält, erhalten Sie folgende Ergebnisse:

A = Text1.Value + Text2.Value		' A enthält den Wert "12"
A = CDbl(Text1.Value) + Text2.Value	' A enthält den Wert 3

Auswerten von Daten und Rückgabe von Daten an den Server
Das Beispiel für eine einfache Auswertung enthält ein normales Schaltflächen-Steuerelement. Wenn das Beispiel ein Submit-Steuerelement verwenden würde, könnte es die Daten niemals auswerten, da alle Daten direkt an den Server übergeben würden. Wenn Sie das Submit-Steuerelement nicht einsetzen, können Sie die Daten prüfen, aber sie werden nicht an den Server übergeben. Dazu ist eine zusätzliche Code-Zeile notwendig:

<SCRIPT LANGUAGE="VBScript"> 
<!--
Sub Uebermitteln_OnClick
  Dim DasFormular
  Set DasFormular= Document.gueltigesFormular
  If IsNumeric(DasFormular.Text1.Value) Then
    If DasFormular.Text1.Value < 1 Or DasFormaular.Text1.Value > 10 Then
      MsgBox "Bitte geben Sie einen Wert von 1 bis 10 ein."
    Else
      MsgBox "Vielen Dank."
      DasFormular.Uebermittlen	' Daten korrekt, an Server senden.
    End If
  Else
    MsgBox "Bitte geben Sie einen numerischen Wert ein."
  End If
End Sub
-->
</SCRIPT>

Um die Daten an den Server zu übergeben, ruft der Code die Submit-Methode des Formularobjekts auf, sofern die Daten korrekt sind. Ab diesem Zeitpunkt behandelt der Server die Daten wie sonst auch, nur wurden sie bereits auf ihre Richtigkeit überprüft, wenn sie den Server erreichen. Vollständige Informationen über die Submit-Methode und andere Methoden finden Sie auf der Seite Internet Explorer Scripting-Objektmodell.

Bis jetzt haben Sie nur die Standard-HTML-<FORM>-Objekte kennengelernt. Mit Internet Explorer 3.0 können Sie auch die Leistungsfähigkeit der ActiveX™-Steuerelemente (früher auch OLE-Steuerelemente genannt) und der Java-Objekte voll ausschöpfen.


© 1997 Microsoft Corporation. All Rechte vorbehalten. Bestimmungen zur Verwendung