Question
recaptcha v3 on page with multiple forms
I'm using this code to implement multiple forms on a page:
var arrayFrom = Function.prototype.call.bind(Array.prototype.slice);
var MKTOFORM_ID_ATTRNAME = "data-formId";
MktoForms2.whenRendered(function(form) {
var formEl = form.getFormElem()[0],
rando = "_" + new Date().getTime() + Math.random();
arrayFrom(formEl.querySelectorAll("label[for]")).forEach(function(labelEl) {
var forEl = formEl.querySelector('[id="' + labelEl.htmlFor + '"]'),
forElName = $(forEl).attr('name'),
labelID = "Lbl" + forElName + "_" + rando;
if (forEl) {
labelEl.htmlFor = forEl.id = forEl.id + rando;
labelEl.id = labelID;
$(forEl).attr('aria-labelledby', labelID);
}
});
});
And also this code to add a hidden field to the forms:
var arrayFrom = Function.prototype.call.bind(Array.prototype.slice);
var MKTOFORM_ID_ATTRNAME = "data-formId";
arrayFrom(config.formIds).forEach(function(formId) {
var loadForm = MktoForms2.loadForm.bind(MktoForms2,config.podId,config.munchkinId,formId),
formEls = arrayFrom(document.querySelectorAll("[" + MKTOFORM_ID_ATTRNAME + '="' + formId + '"]'));
(function loadFormCb(formEls) {
var formEl = formEls.shift();
formEl.id = "mktoForm_" + formId;
loadForm(function(form) {
form.addHiddenFields({ lastFormURL : window.location.href.replace(/https?:\/\//i, "") });
formEl.id = "";
if (formEls.length) {
loadFormCb(formEls);
}
});
})(formEls);
});
I'm trying to add recaptcha v3 to the forms now using this example: https://codepen.io/figureone/pen/JQPgPE
Can anyone help me get this code to work on multiple forms and combine it to the existing code that's being used above?