Pielāgotas JavaScript pievienošana veidlapai
Piezīme
No 2022. gada 12. oktobra, Power Apps portāli ir Power Pages. Papildinformācija. Pakalpojums Microsoft Power Pages tagad ir vispārēji pieejams (emuārs)
Drīzumā Power Apps portālu dokumentācija tiks migrēta un sapludināta ar Power Pages dokumentāciju.
Gan pamata veidlapas, gan vairāksoļu veidlapas solis satur lauku ar nosaukumu Pielāgota JavaScript, ko var izmantot, lai uzglabātu JavaScript kodu, kas ļautu paplašināt vai modificēt veidlapas vizuālo izskatu vai funkcijas.
Pielāgotais JavaScript bloks tiks pievienots lapas apakšā tieši pirms veidlapas slēgšanas atzīmes elementa.
Veidlapas lauki
Entītijas lauka HTML ievades ID ir iestatīts uz atribūta loģisko nosaukumu. Tas ļauj viegli atlasīt lauku, iestatījuma vērtības vai citu klienta puses manipulāciju ar jQuery.
$(document).ready(function() {
$("#address1_stateorprovince").val("Saskatchewan");
});
Svarīgi
Modeļa vadītai veidlapai pievienojot izvēles kolonnu, ko izmantot vairāksoļu veidlapas darbībā vai pamata veidlapā, portāla lapā tiek rādīta kā nolaižamā servera vadīkla. Izmantojot pielāgotu JavaScript, lai vadīklai pievienotu papildu vērtības, lapas iesniegumā tiks parādīts ziņojums "Nederīgs atpakaļsūtīšanas vai atzvanīšanas arguments".
Papildu klienta puses lauku validācija
Dažreiz jums var būt nepieciešams pielāgot veidlapas lauku validāciju. Šis piemērs liek lietotājam norādīt e-pastu tikai tad, ja citā laukā ir iestatīta vēlamā sazināšanās veida vērtība E-pasts.
Piezīme
Klienta puses lauku validācija apakšrežģī netiek atbalstīta.
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));
}
Vispārējā validācija
Nospiežot pogu Tālāk/Iesniegt, tiek izpildīta funkcija ar nosaukumu entityFormClientValidate. Jūs varat paplašināt šo metodi, lai pievienotu pielāgotu validācijas loģiku.
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));
}