Microsoft® Visual Basic® Scripting Edition
VBScript και Φόρμες

 

| VBScript Tutorial |
| Previous | Next


Simple Validation

Μπορούμε να χρησιμοποιήσουμε την Visual Basic Scripting Edition για να κάνουμε πολλές από τις εργασίες της φόρμας που συνήθως έχουν να κάνουν με τον server. Μπορούμε επίσης να κάνουμε πράγματα που δεν μπορούν να γίνουν στον server.
 

Εδώ είναι ένα απλό παράδειγμα client-side validation. Ο κώδικας HTML είναι για ένα text box και ένα button. Αν χρησιμοποιήσουμε τον Microsoft Internet Explorer για να δούμε τη σελίδα που δημιουργείται από τον κώδικα, θα δούμε ένα μικρό text box με ένα button δίπλα του.
 
 

        <HTML

        <HEAD<TITLE Simple Validation</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.Value10 Then

                                MsgBox’’Please enter a number between 1 and 10.’’

                        Else

                                MsgBox’’Thank you.’’

                        End If

                Else

                        MsgBox’’Please enter a numeric value.’’

                End If

        End Sub

        -->

        </SCRIPT

        </HEAD

        <BODY

        <H3 Simple Validation</H3<HR

        <FORM NAME=’’ValidForm’’

        Enter a value between 1 and 10:

        <INPUT NAME=’’Text1’’ TYPE=’’TEXT’’ SIZE=’’2’’

        <INPUT NAME=’’Submit’’ TYPE=’’BUTTON’’ VALUE=’’Submit’’

        </FORM

        </BODY

        </HTML

  Η μόνη διαφορά μεταξύ αυτού του και εκείνου του παραδείγματος Μια απλή VBScript σελίδα, είναι ότι το Valuepropertyτου text box χρησιμοποιείται για να ελέγξει την εισερχόμενη τιμή. Για να πάρουμε το Value property, ο κώδικας πρέπει να ενεργοποιήσει την αναφορά στο όνομα του text box.
 
 

Μπορούμε πάντα να γράψουμε μια πλήρη αναφορά Document.ValidForm.Text1. Όμως όπου έχουμε πολλαπλή αναφορά σε φόρμες ελέγχου, θα είναι καλό να κάνουμε αυτό που έγινε εδώ. Πρώτα δηλώνουμε μια μεταβλητή. Μετά χρησιμοποιούμε το Setγια να αναθέσουμε στη φόρμα το όνομα της μεταβλητής TheForm. Μια συνηθισμένη δήλωση προσδιορισμού δεν δουλεύει εδώ. Πρέπει να χρησιμοποιήσουμε το Set για να διατηρήσουμε μια αναφορά σε ένα αντικείμενο.
 
 

Χρησιμοποιώντας αριθμητικές τιμές
 
 

Προσέξτε ότι το παράδειγμα εξετάζει αμέσως την τιμή με έναν αριθμό : χρησιμοποιεί την IsNumeric function για να σιγουρευτεί ότι το αλφαριθμητικό στο text box είναι αριθμός. Παρ’ όλο που το VBScript αυτόματα μετατρέπει ένα string σε έναν αριθμό , είναι καλό να ελέγχουμε την τιμή που εισάγει ο χρήστης για τον υποτύπο των δεδομένων της, και να χρησιμοποιούμε τις conversion functions σαν να ήταν αναγκαίες. Επίσης, όταν κάνουμε πρόσθεση μεταξύ των τιμών των text box, πρέπει να τις μετατρέψουμε σε αριθμούς, αφού το σύμβολο + είναι και το σύμβολο της πρόσθεσης αλλά και αλφαριθμητικό. Για παράδειγμα, αν το Text1 περιέχει ’’1’’ και το Text2 περιέχει ’’2’’ , βλέπουμε τα παρακάτω αποτελέσματα :
 
 

        A=Text1.Value + Text2.Value ‘A is ’’12’’

        A= CDb1(Text1.Value) + Text2.Value ‘A is 3
 
 

Έλεγχος εγκυρότητας και πέρασμα δεδομένων στον Server
 
 

Το παράδειγμα που ακολουθεί πραγματοποιεί έλεγχο στον πελέτη. Αν δεν χρησιμοποιούσε έναν έλεγχο, το παράδειγμα δεν θα έβλεπε ποτέ τα δεδομένα, όλα θα πήγαιναν κατευθείαν στον Server. Αποφεύγοντας τον έλεγχο μας επιτρέπει να ελέγξουμε τα δεδομένα, αλλά δεν τα υποβάλλει στον . Αυτό απαιτεί μια επιπλέον γραμμή κώδικα :
 
 

        <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.Value10 Then

                                MsgBox’’Please enter a number between 1 and 10.’’

                        Else

                                MsgBox’’Thank you.’’

                                TheForm.Submit ‘ Data correct; send to server.

                        End If

                Else

                        MsgBox’’Please enter a numeric value.’’

                End If

        End Sub

        -->

        </SCRIPT

Για να στείλουμε δεδομένα στο server, ο κώδικας επικαλείται την μέθοδο Submit στο object της φόρμας όταν τα δεδομένα είναι σωστά. Από εκεί, ο server χειρίζεται τα δεδομένα όπως θα έκανε και αλλιώς, εκτός του ότι τα δεδομένα είναι σωστά πριν πάνε εκεί. Θα βρείτε πληροφορίες για τη μέθοδο Submit και άλλες μεθόδους στη σελίδα Internet Explorer Scripting Object Model.
 
 

Μέχρι εδώ έχουμε δει μόνο τα στάνταρτ HTML <FORM objects. Ο Internet Explorer επίσης σας επιτρέπει να εκμεταλλευτείτε όλους τους ελέγχους του ActiveXκαι των Java objects.
 
 


© 1997 Microsoft Corporation. All rights reserved.