Skip to main content
Dec 9, 2019 4:42 AM UTC
Solved

Driving conditional content in the absence of a field

Hi everyone,

I'm currently working with a transactional eDM using SOAP UI for testing. This particular eDM has three pieces of content which are supposed to render under certain circumstances.

The fields which are driving this, however, only have one value and if this value is not passed via the API, then the fields aren't passed at all.

What I've been attempting to do is write conditional statements to drive the content of the email by checking if the field is present. eg.

<% if (rtEvent.ctx.FIELDNAME1 == undefined || rtEvent.ctx.FIELDNAME2 == undefined || rtEvent.ctx.FIELDNAME3 == undefined) { %>

CONTENT 

I was testing this by removing the particular fields from the SOAP event to see if this simulated the field not being passed, however I'm unsure if this is the correct thing to do or not.

Using 'undefined' doesn't appear to work. I have tried 'null' as well.

Does anyone know whether what I'm attempting is possible? Is this the correct way / syntax to check for the absence of a field?

Thanks!

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Manoj_Kumar
Manoj_KumarAccepted solution
Community Advisor
Dec 16, 2019 9:54 AM UTC

Hello Michael,
Try this

if (typeof rtEvent.ctx.FIELDNAME1  === "undefined"){

CONTENT HERE

}

 

OR

if(rtEvent.ctx.FIELDNAME1){

CONTENT HERE

}

 

Let me know if that helps.

 

Manoj  | https://themartech.pro

1 reply

Manoj_Kumar
Community Advisor
Manoj_KumarCommunity AdvisorAccepted solution
Community Advisor
Dec 16, 2019 9:54 AM UTC

Hello Michael,
Try this

if (typeof rtEvent.ctx.FIELDNAME1  === "undefined"){

CONTENT HERE

}

 

OR

if(rtEvent.ctx.FIELDNAME1){

CONTENT HERE

}

 

Let me know if that helps.

 

Translate
Manoj  | https://themartech.pro