Lead Capture Tools

romidg
メンバー

Sending data with onFormSubmit: data being sent only for existing contacts

解決

Hi there!

 

I'm trying to send data through my HB form using hidden fields. We're testing the form with my team and it seems like if the person hitting submit is already a HB contact, then the function inside onFormSubmit runs fine and we get an email with the data we want, but if the person isn't already a HB contact, we just get a regular email with the person's email address (which is the only non-hidden field in the form).

Any idea what this could be? 

I'll leave my code in the comments as it seems to mark my post as spam if I put it here.

0 いいね!
1件の承認済みベストアンサー
romidg
解決策
メンバー

Sending data with onFormSubmit: data being sent only for existing contacts

解決
  hbspt.forms.create({
                portalId: "2961853",
                formId: "b9bc4c6d-ce95-4275-ac7c-1ca703211196",
                onFormSubmit: function($form) {
                  const form = $form[0]
                  const email = form[0].value
                  const companySize = $('#slider')[0].value
                  const paymentPeriod = annually.prop('checked') === true ? 'annually' : 'monthly'
                  const currency = $('.currency')[0].innerHTML
                  const total =  $('#final-price')[0].innerHTML
                  const data = {
                    fields: [
                      {
                        name: "builder_company_size",
                        value: companySize
                      },
                      {
                        name: "builder_payment_period",
                        value: paymentPeriod
                      },
                      {
                        name: "builder_currency",
                        value: currency
                      },
                      {
                        name: "builder_price",
                        value: total
                      },
                      {
                        name: "email",
                        value: email
                      }
                    ],
                    legalConsentOptions: {
                      consent: { // Include this object when GDPR options are enabled
                        consentToProcess: true,
                        text: "I agree to allow Starred to store and process my personal data.",
                        communications: [
                          {
                            value: true,
                            subscriptionTypeId: 999,
                            text: "I agree to be contacted by Starred."
                          }
                        ]
                      }
                    }
                  }
                  $.ajax({
                    type: "POST",
                    url: 'https://api.hsforms.com/submissions/v3/integration/submit/2961853/b9bc4c6d-ce95-4275-ac7c-1ca703211196',
                    data: JSON.stringify(data),
                    success: 'success',
                    dataType: 'json',
                    contentType: 'application/json'
                  });
                }
              });

元の投稿で解決策を見る

0 いいね!
1件の返信
romidg
解決策
メンバー

Sending data with onFormSubmit: data being sent only for existing contacts

解決
  hbspt.forms.create({
                portalId: "2961853",
                formId: "b9bc4c6d-ce95-4275-ac7c-1ca703211196",
                onFormSubmit: function($form) {
                  const form = $form[0]
                  const email = form[0].value
                  const companySize = $('#slider')[0].value
                  const paymentPeriod = annually.prop('checked') === true ? 'annually' : 'monthly'
                  const currency = $('.currency')[0].innerHTML
                  const total =  $('#final-price')[0].innerHTML
                  const data = {
                    fields: [
                      {
                        name: "builder_company_size",
                        value: companySize
                      },
                      {
                        name: "builder_payment_period",
                        value: paymentPeriod
                      },
                      {
                        name: "builder_currency",
                        value: currency
                      },
                      {
                        name: "builder_price",
                        value: total
                      },
                      {
                        name: "email",
                        value: email
                      }
                    ],
                    legalConsentOptions: {
                      consent: { // Include this object when GDPR options are enabled
                        consentToProcess: true,
                        text: "I agree to allow Starred to store and process my personal data.",
                        communications: [
                          {
                            value: true,
                            subscriptionTypeId: 999,
                            text: "I agree to be contacted by Starred."
                          }
                        ]
                      }
                    }
                  }
                  $.ajax({
                    type: "POST",
                    url: 'https://api.hsforms.com/submissions/v3/integration/submit/2961853/b9bc4c6d-ce95-4275-ac7c-1ca703211196',
                    data: JSON.stringify(data),
                    success: 'success',
                    dataType: 'json',
                    contentType: 'application/json'
                  });
                }
              });
0 いいね!