Expand my Community achievements bar.

Announcing the launch of new sub-community for Campaign Web UI to cater specifically to the needs of Campaign Web UI users!
SOLVED

Passing web form data to recipient table using Javascript

Avatar

Level 4

Hi,

I created a subscription form which contains first name and email address only. I want to add a hidden field "language" and have it's default value set to "EN",  however, the value "EN" didn't pass to the recipient table after submission.

This is my current workflow for the web form.

1687154_pastedImage_3.png

Is this possible to use the JavaScript to pass the language field = "EN" to the recipient table using the workflow below, and what is the JavaScript code?

1687155_pastedImage_4.png

Thanks,

ED

1 Accepted Solution

Avatar

Correct answer by
Community Advisor

I usually like to use a js activity to collect data stored in variables on my webapps, you have more control over it. check the following SOAP methods in JavaScript

i.e writing from webapp to a custom schema.

And you can even pass these variables from a webapp to a workflow using xtk.workflow.PostEvent

View solution in original post

5 Replies

Avatar

Correct answer by
Community Advisor

I usually like to use a js activity to collect data stored in variables on my webapps, you have more control over it. check the following SOAP methods in JavaScript

i.e writing from webapp to a custom schema.

And you can even pass these variables from a webapp to a workflow using xtk.workflow.PostEvent

Avatar

Level 4

Thanks David for your reply. I am currently using default form creation from Adobe Campaign under online \web application, please see the workflow below.  I added the JS script activity and try to pass the language field = "EN" to the recipient table, it didn't work.

1699938_pastedImage_4.png

Could you please take a look at the code below and let me know if there is any workaround?

var language = "EN";

  xtk.session.Write(<myschema xtkschema="cus:receipient"

      language={ctx.vars.language}

      />);

Thanks,

ED

Avatar

Community Advisor

You need to replace all "mySchema" values to the name of the schema you are writing to, also you have a typo in value recipient.

Avatar

Level 4

Thanks David. I am not quite sure about the name of "mySchema". I don't use any custom schema. so I think my scheme is nms:recipient. So I replaced the below myscheme to nms:recipient?

var language = "EN";

  xtk.session.Write(<nms:recipient xtkschema="nms:recipient"

      language={ctx.vars.language}

      />);

I tested it above code, it didn't work. Could you please let me know if there is error in the above code?

Thanks again.

ED

Avatar

Community Advisor

The first bold value remove the prefix and leave it as recipient only.