Kongsi melalui


Tambah JavaScript tersuai pada borang

Rekod langkah borang asas dan borang berbilang langkah mengandungi medan yang bernama JavaScript Tersuai yang boleh digunakan untuk menyimpan kod JavaScript untuk membolehkan anda melanjutkan atau mengubah suai paparan visual atau fungsi borang.

Blok JavaScript tersuai akan ditambahkan pada bahagian bawah halaman sebelum menutup elemen tag borang.

Medan borang

ID input HTML untuk medan jadual ditetapkan kepada nama logik atribut. Memilih medan, penetapan nilai atau manipulasi pihak klien lain mudah dengan melalui jQuery.

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

Penting

Penambahan lajur pilihan kepada borang berpandukan model untuk digunakan dalam langkah borang berbilang langkah atau borang asas akan muncul pada halaman web sebagai kawalan pelayan juntai bawah. Menggunakan JavaScript tersuai untuk menambah nilai tambahan pada kawalan akan menyebabkan mesej "Argumen siaran kembali atau panggilan balik yang tidak sah" pada penyerahan halaman.

Pengesahan medan bahagian klien tambahan

Kadangkala anda mungkin perlu menyesuaikan pengesahan medan pada borang. Contoh ini memaksa pengguna untuk menentukan e-mel hanya jika medan lain untuk kaedah kenalan diutamakan ditetapkan kepada E-mel.

Nota

Pengesahan medan bahagian klien tidak disokong dalam subgrid.

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));
}

Pengesahan umum

Selepas klik butang Seterusnya/Serahkan, fungsi bernama entityFormClientValidate dilaksanakan. Anda boleh melanjutkan kaedah ini untuk menambah logik pengesahan tersuai.

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));
}

Lihat juga