Re: Form on Non Marketo Page, Load Follow Up URL in IFrame

Anonymous
Not applicable

Form on Non Marketo Page, Load Follow Up URL in IFrame

I have a page on my website where we are hosting a marketo form in an iFrame. We want to keep the visitor on our website so we created a thank you page for this form on our website. Unfortunately, when someone completes the form the follow up page loads, except it loads in the iFrame and doesn't go to the next page. 

How do I get the follow up page to load fully on the next page and not in the iFrame?

Thanks
Julie

Tags (1)
5 REPLIES 5
Anonymous
Not applicable

Re: Form on Non Marketo Page, Load Follow Up URL in IFrame

Julie, you'll need the expertise of someone fluent in JS/jQuery. Here's an article about how to do what you're trying to accomplish: http://stackoverflow.com/questions/580669/redirect-parent-window-from-an-iframe-action-using-javascript
Anonymous
Not applicable

Re: Form on Non Marketo Page, Load Follow Up URL in IFrame

Hello Julie, like Charlie said, it requires a bit of scripting added to the landing page but it's pretty straightfoward. If you have access to someone with scripting experience or if you want to take a stab at it, please see below. We currently have several landing pages with an embedded form hosted within an iframe and this code seems to work great. I'm sure there are other options out there but the script below works well for us.

1. Edit and add an html element to the Marketo landing page where your form is currently sitting (page hosted in the iframe) and
2. Edit the newly added html element and add the following code:

<---- code starts here --->

<script type="text/javascript">
 
// setup jQuery.noConflict
if ( typeof $jQ == 'undefined' ) { var $jQ = jQuery.noConflict(); }
 
  $jQ(document).ready(function() {
 
  /* process the form return to parent window*/
  
  // Marketo form
  $jQ('.lpeRegForm').attr('target', '_top');
  $jQ("input[name='returnURL']").attr('value','replace with thank you url here');  
  $jQ("input[name='retURL']").attr('value','replace with thank you url here'); 
 
});
</script>

<--- code ends here --->

3. Replace 'thank you url here' with the actual redirect url, including http://
4. Approve your landing page
5. Test, test, test! Happy ifram-ing

Basically you're changing the target attribute of the form to "_top" instead of "_self", which is the default. Keep in mind, this script will work as long as the user has Javascript enabled in their browser.

The script also works well if you want to open a pdf once the form is submitted instead of redirecting to a thank you page. The url  specified in the code will take precedence over the url value entered in the form's settings.

Best,
Antonio
Karin_Edmondson
Level 3

Re: Form on Non Marketo Page, Load Follow Up URL in IFrame

I used the folloiwng:

<script type="text/javascript" src="/js/public/jquery-latest.min.js"></script>
<script type="text/javascript">
   // set no conflict mode for jquery
var $jQ = jQuery.noConflict();

$jQ(document).ready(function(){
   // all form submits will open in a new window
$jQ('.lpeRegForm').attr('target','_top');
});
</script>

I got this from

http://info.regalix.com/Marketo-Free-Support.html

they also have some free templates you can download.

Anonymous
Not applicable

Re: Form on Non Marketo Page, Load Follow Up URL in IFrame

Thanks everyone! Very helpful, we were able to get it fixed.
Anonymous
Not applicable

Re: Form on Non Marketo Page, Load Follow Up URL in IFrame

Awesome!