Lead Capture Tools

romidg
Membre

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

Résolue

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 Votes
1 Solution acceptée
romidg
Solution
Membre

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

Résolue
  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'
                  });
                }
              });

Voir la solution dans l'envoi d'origine

0 Votes
1 Réponse
romidg
Solution
Membre

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

Résolue
  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 Votes