Почему я получаю ошибку Y Не определена ошибка в Squarespace - PullRequest
0 голосов
/ 25 апреля 2020

Я использую код Javascript для внедрения в сайт квадратного пространства, но когда я это делаю, я получаю сообщение об ошибке "uncaught referenceerror y не определен". Я пытаюсь использовать формы Squarespace для записи в Salesforce, но я не знаю, поддерживается ли YUI в Squarespace 7.1.

<script type="text/javascript">Y.namespace('Template').Salesforce = Class.create({


initialize: function (config) {
this.config = config;
},

submit: function () {
var formData = this.getFormData(this.config.sqsFormSubmit);
var phoneNumber = '';

if (formData['phone'] && formData['phone'].length >= 4) {
  phoneNumber = formData['phone'].join('-');
}
var description = '';

for (key in formData) {
  var value = formData[key];

  if (Array.isArray(value)) {
    value = value.join(' ');
  }

  description += key + ': ' + value + '\n';
}

var params = {
  first_name: formData['name'][0],
  last_name: formData['name'][1],
  email: formData['email_address'],
  phone: phoneNumber,
  company: formData['company'],
  lead_source: formData['sqf_lead_source'] || 'web',
  description: description,
  oid: this.config.oid
};

});</script>

1 Ответ

0 голосов
/ 25 апреля 2020

Вы можете получить доступ к «Y» таким образом. Тем не менее, ваш код, скорее всего, будет запущен до того, как появится «Y» Оберните ваш код в окно прослушивателя событий load, например так:

<script>
window.addEventListener("load", function() {
  console.log(Y); // Your code here.
});
</script>

Если у вас есть другие проблемы с таргетингом формы, возможно, вам придется использовать setTimeout или MutationObserver, чтобы необходимые элементы доступны.

...