Hubspot 表单嵌入来自 hbspt.forms.create 的 onFormReady 函数 TypeError: e.serializeArray 不是函数

问题描述 投票:0回答:1

我正在尝试序列化 Hubspot 表单中的输入数组以添加或更改 cookie,但我不断收到错误

onFormReady function from hbspt.forms.create TypeError: e.serializeArray is not a function
,而且我不知道该怎么办。我试图不使用 jQuery,我可以用什么来代替它?

<script>
  hbspt.forms.create({
  region: "",
  portalId: "",
  formId: "",
  redirectUrl: "/thank-you/",
  onFormReady: function(e){
    e.serializeArray().map(x=>{
      let cookie_val = Cookies.get(x.name)
      if (cookie_val && cookie_val != ''){
        e.find('input[name="'+x.name+'"]').val(cookie_val).change();
      }
    })
  }
});
</script>
javascript jquery serialization hubspot
1个回答
0
投票

根据docs

onFormReady
返回
form
对象。它不是一个数组,所以你可以尝试序列化输入:

  onFormReady: function(e){
    e.find('input').serializeArray().map(x=>{
      let cookie_val = Cookies.get(x.name)
      if (cookie_val && cookie_val != ''){
        e.find('input[name="'+x.name+'"]').val(cookie_val).change();
      }
    })
  }
© www.soinside.com 2019 - 2024. All rights reserved.