1. #1
    Europa's Avatar
    Registered
    29/09/10
    Location
    Kortrijk
    Posts
    240
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/3

    Vraag client side vs server side

    Hoi!

    Ik oefen een beetje met een custom validator (visual studio 2010 - C#) en er is iets dat ik niet begrijp.

    Wanneer ik iets programmeer in de event servervalidate loop dat altijd zonder probleem maar wanneer ik daar andere validators bij wil gebruiken dan werkt mijn customvalidator niet meer.

    Ik weet dat het heeft te maken dat de event servervalidate server side is en dat de andere validators client side zijn maar waarom kunnen beide niet naast elkaar werken?

    Bvb ik heb een required field validator op een textbox, en een customvalidator op een andre textbox, beide apart werken maar als ik die tesamen laat uitvoeren werkt alleen de client sides validators hier in dat geval de required field validator.

    Ik ben ook een beginner dus heb ik nog niet veel inzicht in client side en server side.

    Alvast bedankt!
    no votes  

  2. #2
    Albireo's Avatar
    Registered
    21/10/05
    Location
    Herentals
    Posts
    1,515
    iTrader
    5 (100%)
    Mentioned
    0 Post(s)
    Reputation
    2/13
    Op het moment dat je op de submit-knop van een formulier drukt, doen alle client side validators hun werk. Als een van hen iets te melden heeft, wordt het formulier niet doorgestuurd naar de server maar worden alle foutmeldingen getoond. Als geen van de client side validators iets te melden heeft, wordt het formulier doorgestuurd naar de server. Op de server gaan alle server side validators aan het werk. De required field validator werkt, net zoals de andere ingebouwde validators zowel client als server side. Maar omdat javascript meestal enabled is, hebben die ingebouwde validators niets te melden server side.
    Als jouw custom validator enkel server side is, is het derhalve normaal dat je meldingen van de required field validator nooit samen zal zien met meldingen van jouw custom validator (tenzij je javascript disabled in de browser of geen client side code laat genereren voor de required field validator (via EnableClientScript)).

    Maar je zou ook client side code voor je custom validator kunnen schrijven.
    bv. voor tekst die met "T" moet beginnen:
    server side:
    Code:
        protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args) {
            args.IsValid = args.Value.StartsWith("T");
        }
    en overeenkomstig client side (de ClientValidationFunction-property van CustomValidator1 is ingesteld op "ValidateLastName" en EnableClientScript moet true zijn):
    Code:
        <script type="text/javascript">
        //<![CDATA[
            function ValidateLastName(sender, args) {
                args.IsValid = args.Value.charAt(0) == "T";
            }
        //]]>
        </script>
    "And we wept, Precious. We wept to be so alone." --- Gollum
    "Sometimes there are no words. No clever quotes to neatly sum up what happened that day. Sometimes, the day just . . . ends." --- Hotch (Criminal Minds)
    no votes  

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

Log in

Log in