Bendrinti naudojant


Tinkintos „JavaScript“ įtraukimas į formą

Tiek pagrindinių formų, tiek daugiapakopių formų veiksmo įraše yra laukas pavadinimu Pasirinktinė „JavaScript“, kuri gali būti naudojama saugoti „JavaScript“ kodą, leidžiantį praplėsti arba modifikuoti formos vaizdinio elemento rodymą arba funkciją.

Pasirinktinis „JavaScript“ blokas bus pridėtas puslapio apačioje prieš pat formos uždarymo žymės elementą.

Formos laukai

Nustatomas lentelės lauko HTML įvesties ID į loginį atributo pavadinimą. Pasirinkti lauką, nustatyti reikšmes ir atlikti kitus veiksmus kliento pusėje yra lengva naudojant „jQuery“.

$(document).ready(function() {
   $("#address1_stateorprovince").val("Saskatchewan");
});

Svarbu

Įtraukus pasirinkimo stulpelį į modeliu pagrįstą formą, naudojamą daugiapakopės formos žingsnyje arba pagrindinėje formoje, svetainėje bus rodoma kaip išplečiamojo serverio valdiklis. Naudojant pasirinktinį „JavaScript" norint į valdiklį įtraukti papildomų reikšmių, puslapio pateiktame puslapyje bus rodomas pranešimas „Netinkamas atgalinis arba atgalinis argumentas".

Papildoma laukų patikra iš kliento pusės

Kartais laukų patikrinimą gali tekti tinkinti formoje. Šis pavyzdys verčia vartotoją nurodyti el. paštą tik tada, jei kitame lauke kaip pageidautinas susisiekimo būdas yra nustatytas El. paštas.

Pastaba.

Kliento laukų tikrinimas papildomame tinklelyje nepalaikomas.

if (window.jQuery) {
   (function ($) {
      $(document).ready(function () {
         if (typeof (Page_Validators) == 'undefined') return;
         // Create new validator
         var newValidator = document.createElement('span');
         newValidator.style.display = "none";
         newValidator.id = "emailaddress1Validator";
         newValidator.controltovalidate = "emailaddress1";
         newValidator.errormessage = "<a href='#emailaddress1_label' referencecontrolid='emailaddress1 ' onclick='javascript:scrollToAndFocus(\"emailaddress1 _label\",\" emailaddress1 \");return false;'>Email is a required field.</a>";
         newValidator.validationGroup = ""; // Set this if you have set ValidationGroup on the form
         newValidator.initialvalue = "";
         newValidator.evaluationfunction = function () {
            var contactMethod = $("#preferredcontactmethodcode").val();
            if (contactMethod != 2) return true; // check if contact method is not 'Email'.
            // only require email address if preferred contact method is email.
            var value = $("#emailaddress1").val();
            if (value == null || value == "") {
            return false;
            } else {
               return true;
            }
         };

         // Add the new validator to the page validators array:
         Page_Validators.push(newValidator);

      });
   }(window.jQuery));
}

Bendras tikrinimas

Spustelėjus mygtuką Toliau/Pateikti vykdoma funkcija pavadinimu entityFormClientValidate. Galite išplėsti šį metodą, kad pridėtumėte pasirinktinę tikrinimo logiką.

if (window.jQuery) {
   (function ($) {
      if (typeof (entityFormClientValidate) != 'undefined') {
         var originalValidationFunction = entityFormClientValidate;
         if (originalValidationFunction && typeof (originalValidationFunction) == "function") {
            entityFormClientValidate = function() {
               originalValidationFunction.apply(this, arguments);
               // do your custom validation here
               // return false; // to prevent the form submit you need to return false
               // end custom validation.
               return true;
            };
         }
      }
   }(window.jQuery));
}

Taip pat žr.