SOLVED

How to create a field that grabs the web page the form was filled out on?

Go to solution
Nate_Oosterhous
Level 7
Hello Everyone!

We are looking at creating a field that will grab the web page the form was filled out on.  We then would like to add this as a token in and alert that goes to sales when a form is filled out?  Do anyone have any ideas of how to accomplish this?
Tags (1)
1 ACCEPTED SOLUTION
SanfordWhiteman
Level 10 - Community Moderator
@Nate O Easily done with a hidden field.

MktoForms2.loadForm("//app-**01.marketo.com", "***-***-***", 148,
    function(form) 
    {
        form.addHiddenFields({ LastFormURL : document.location.href })    
    });
 

View solution in original post

16 REPLIES 16
Anonymous
Not applicable

Hi,

I know this is not a recent thread.

But where do you actually place the Javascript code? In the marketo form? Where how? or on your website page?

Grégoire_Miche2
Level 10

HI Benedicte,

depends on whether you are using it in a Marketo LP or in an embedded form.

In a Marketo LP, you will have to edit the template a put this at the end, before the </body> tag :

<script>

MktoForms2.whenReady(function (form) {

    form.addHiddenFields({ LastFormURL : document.location.href });

});

</script>

In an embedded form, you will have to modify the embed code as shown by Sanford

-Greg

SanfordWhiteman
Level 10 - Community Moderator
The asterisks represent your company's Marketo data (your Munchkin ID and Marketo instance). Your developer will know what to do if s/he is already using the embed code.
Leanne_Persang
Level 4

Hi Sanford,

So only this code is needed to trace the last form URL? And, the webmaster will know what to put in the asterisks?

MktoForms2.loadForm("//app-**01.marketo.com", "***-***-***", 148,

    function(form)

    {

        form.addHiddenFields({ LastFormURL : document.location.href })   

    });

Then, I also need to create a smart campaign with Smart List Fills Out Form, and Flow, Change Data Value, MyField, New Attribute is {{trigger.Web Page}}? For the MyField I created a custom "Web Page Source" field, which I can add to my alert email.

SanfordWhiteman
Level 10 - Community Moderator

No, you don't need a Smart Campaign.  You just need the field LastFormURL (String) to exist in your instance (you can call it anything you want, just make sure the code reflects the same field name).

Leanne_Persang
Level 4

Hi Sanford,

I tried Kenny's suggestion of a campaign above and it worked - I did not need any additional code.

"You'll want to create a smart campaign with Smart List Fills Out Form, and Flow, Change Data Value, MyField, New Attribute is {{trigger.Web Page}}"

I referenced the trigger token in the alert email so the team knows what product page the end user filled out the form on.

Thanks for your help.

SanfordWhiteman
Level 10 - Community Moderator

The point is that you need *either* the SC or the JS API code. The code is more efficient because it doesn't mean another trigger is active in your instance.

Nate_Oosterhous
Level 7
Hi Sanford,

Would I have our developer put that whole code just like it is with the asterisks and everything in the form we have embedded on multiple external web pages?
SanfordWhiteman
Level 10 - Community Moderator
@Nate O Easily done with a hidden field.

MktoForms2.loadForm("//app-**01.marketo.com", "***-***-***", 148,
    function(form) 
    {
        form.addHiddenFields({ LastFormURL : document.location.href })    
    });
 
Joe_Barrett
Level 2

Where does the field value (url) go? Is it saved in the person info? How do you use the url in a token inside an email notification sent after the form is submitted? Thanks

SanfordWhiteman
Level 10 - Community Moderator

You’ll have created a custom String field ahead of time. That’s where it goes, and then it’s outputtable like any other {{lead.token}}.

Kana_Lai
Level 3

Hi Sanford,

Sorry to reply to such an old post, but I was wondering, would this still work on a webpage that doesn't have any Marketo Munchkin tracking? We need to embed one of our forms on a partner website.

Thanks!

Tim_Marcacci
Level 2

Sanford Whiteman I know it's been a few years since you posted this, but it was EXACTLY what I was looking for. Dropped the code right in and everything worked flawlessly. Thank you, Sir!!!

SanfordWhiteman
Level 10 - Community Moderator

Great to hear!

Nate_Oosterhous
Level 7
Hi Kenny,

I tried that and it doesn't populate the field.  It would be an external web page that we want to populate the field with because the form is on an external web page.  Any ideas?
Kenny_Elkington
Marketo Employee
Hey Nate,

You'll want to create a smart campaign with Smart List Fills Out Form, and Flow, Change Data Value, MyField, New Attribute is {{trigger.Web Page}}