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

Execute JS in subject variable

rorocoeur
Level 1
Level 1

Hello,

In a delivery template, in the text version, we use this code to retrieve the subject dynamically:

<% document.write(delivery.mailParameters.subject); %>

The problem is that if there is javascript inside the subject, it is not executed.

For instance, if the subject is : <%=recipient.firstName%>, how are you doing?

It won't execute the firstname variable and will display the all thing as plain text.

Is there any means for avoing this issue?

Thank you very much for your help!

1 Accepted Solution
RamaRajesh
Correct answer by
Employee
Employee

Hi,

This is working for me both in subject line and body of the email. Please find the process screens below and post your screenshots, if you are still facing this problem

s_ncs_user_wizard_email_object.png

s_ncs_user_wizard_email01_139.png

s_ncs_user_wizard_email01_140.png

Thanks,

Rajesh

View solution in original post

3 Replies
florentlb
Level 10
Level 10

Hi,

I'm not sure that what's in the text version of an email can be interpreted other than as plain text.

If you find a solution, please post it here for reference. I'll try to ask around in the meantime.

Florent

RamaRajesh
Correct answer by
Employee
Employee

Hi,

This is working for me both in subject line and body of the email. Please find the process screens below and post your screenshots, if you are still facing this problem

s_ncs_user_wizard_email_object.png

s_ncs_user_wizard_email01_139.png

s_ncs_user_wizard_email01_140.png

Thanks,

Rajesh

View solution in original post

christophec3473
Level 2
Level 2

Hi,

If you use a typologie rule which consider the content of your delivery text content, you will able to add your script in this content.

//script in your rule

var txtStr = delivery.content.text.source;

delivery.content.text.source = '<% document.write(delivery.mailParameters.subject); %>' + txtStr;

Return true;

I don't know if your Javascript don't work in the text context but, it's ok in the html context.

This answer can help you ?

Christophe