Your achievements

Level 1

0% to

Level 2

Tip /
Sign in

Sign in to Community

to gain points, level up, and earn exciting badges like the new
BedrockMission!

Learn more

View all

Sign in to view all badges

SOLVED

External JS file reference in DTM

m_1985
Level 4
Level 4

Hi,

We have a Event based rule that calls a function in an external JS file.  We want to add a reference to that JS file from with in DTM.  Is this possible and if so how/where should we add it?

Thanks in advance.

1 Accepted Solution
Steven_Long
Correct answer by
Level 2
Level 2

One solution would be to create a global page load rule that loads your external script at, for example, "Page Bottom". In the "JavaScript/Third Party Tags" section, add a new "Non-Sequential" script. Then use something like the following to append the library to the page:

var script = document.createElement('script'); script.src = 'http://example.com/js.js'; // your script URL script.onload = function () { //this is only necessary if you need to call something directly after the script loads }; document.head.appendChild(script); // adds external script to page

As long as your Event based rule will fire after this is loaded, you should be good to go.

View solution in original post

6 Replies
jantzen_belliston-Adobe
Community Manager
Community Manager

Hi,

I'm not sure if it would be possible to reference an external js file within DTM. Alternatively, you could host your js script inside DTM in the third party tag section.

Thanks,
Jantzen

m_1985
Level 4
Level 4

Thanks for the reply. I did tried like this but it didn't work.

jantzen_belliston-Adobe
Community Manager
Community Manager

I'd recommend pulling the code out of the test.js file and placing it into the Third Party Script section directly. This would eliminate the need to reference an external script.

jantzen_belliston-Adobe
Community Manager
Community Manager

Hi,

Does my last suggestion solve this issue? If so, would it be acceptable to mark that answer correct?

Thanks,
Jantzen

Steven_Long
Correct answer by
Level 2
Level 2

One solution would be to create a global page load rule that loads your external script at, for example, "Page Bottom". In the "JavaScript/Third Party Tags" section, add a new "Non-Sequential" script. Then use something like the following to append the library to the page:

var script = document.createElement('script'); script.src = 'http://example.com/js.js'; // your script URL script.onload = function () { //this is only necessary if you need to call something directly after the script loads }; document.head.appendChild(script); // adds external script to page

As long as your Event based rule will fire after this is loaded, you should be good to go.

View solution in original post

jantzen_belliston-Adobe
Community Manager
Community Manager

Steven,

Thanks for the answer! Looks like this is what the original poster was looking for.

Cheers,
Jantzen