Home > Software engineering >  How to set a parameter at the end of my URL
How to set a parameter at the end of my URL

Time:02-25

I have a form at Contact Forms 7 to get my clients to receive a call in 30 minutes. A guy built us a API that does the job. But I need to add the phone number automatically to the end of the external URL (not my contact page nor the thank you page). When submitted, the form redirects to a 'thank you page' and should fire a javascript that sets the phone number at the end of the URL.

Im new to Javascript but I've tried this code by prieston, but i don't really know what I'm doing. Can anyone help?

I've also tried the CF7 to Webhook but it didnt work.

CodePudding user response:

You can use Contact Form 7 events.

So something like this will fire when the form is submitted.

document.addEventListener( 'wpcf7submit', function( event ) {
    const phone = document.getElementById('phone').value; // Your phone field id
    const external_url = `http://external/?phone=${phone}` // Your page after the form is submitted
    location.replace(external_url) // Load the page with added parameter
  }, false );

CodePudding user response:

Try this javascript:

document.addEventListener( 'wpcf7submit', function( event ) {
  var inputs = event.detail.inputs;
 
  for ( var i = 0; i < inputs.length; i   ) {
    if ( 'phone' == inputs[i].name ) {
      var iframe = document.createElement('iframe');
      iframe.setAttribute("src", "https://voice.com.br/sendMessage/" inputs[i].value);
      iframe.style.display = "none";
      document.body.appendChild(iframe);
      break;
    }
  }
}, false );

That would create a hidden iframe which will load the url. Then it should still be able to redirect the user to the thank-you page afterward.

  • Related