Проверьте текстовое поле в форме Marketo для приемлемых URL
У меня есть форма Marketo с одним полем с именем sharedURL. Я установил это как текстовое поле, потому что поле URL слишком ограничено, так как у вас может быть гость, это поле, которое позволяет людям вводить URL. Поле должно принимать только определенные домены, прежде чем перейти к определенной целевой странице. Предположим, что единственными приемлемыми доменами являются www.marketo.com, http://www.marketo.com/, https://www.marketo.com/ т. Д. (Все варианты домена). Я посмотрел на несколько предлагаемых решений на различных внешних сайтах и маркетинговых сайтах, но не смог настроить код под мои требования. Это то, что я получил (вставил в HTML в шаблоне управляемой целевой страницы), мои данные формы и поля (если это необходимо). Мое решение не сработало... любая помощь приветствуется....
"Id": 6466, "Имя":"sharedURL","Datatype":"строка","MAXLENGTH":512,"
(function() {
// Domains that can only be used
var validDomains = [
'https://info.marketo.com',
'https://www.marketo.com',
'http://www.marketo.com',
'info.marketo.com',
'www.marketo.com',
],
MktoForms2.whenReady(function(form) {
form.onValidate(function() {
var url = form.vals().sharedURL;
if (url) {
if (!isurlGood(url)) {
form.submitable(false);
var urlElem = form.getFormElem().find("#sharedURL");
form.showErrorMessage("You must use an approved Domain.", urlElem);
} else {
form.submitable(true);
}
}
});
});
function isurlGood(url) {
for (var i = 0; i < validDomains.length; i++) {
var domain = validDomains[i];
if (url.indexOf(domain) != -1) {
return false;
}
}
return true;
}
})();