Using macros with forms

When configuring forms, you can set values dynamically using various types of macro expressions, for example based on the values submitted in the form’s fields. The following table shows which macro types you can use for particular form configuration values.

Localization

General (K#)

Query string

Cookie

Path

Form data macros

General tab – Display text

General tab – Redirect to URL

General tab – Submit button text

Fields tab – Default value

Fields tab – Field caption

Fields tab – Table layout

Email notification tab – all fields

Autoresponder tab – all fields

Forms on MVC sites

For forms on content-only (MVC) sites, you can only use basic macro expressions, such as form data macros or localization macros. Macros that retrieve values from various types of contexts may not resolve correctly when the form is submitted on your content-only site.

Form data macros

You can use values from current context when configuring a form. This can be achieved using a data macro in the {%field_name%} format. The field_name part of the macro is the Field name value of a particular form field. When the form is submitted, the macros are automatically resolved and replaced with particular data from the form.

These macros can be used in the following text fields:

  • General tab
    • Display text
    • Redirect to URL
  • Email notifications
    • Sender email
    • Recipient emails
    • Subject
    • Email body
  • Autoresponder emails
    • From email
    • Subject
    • Email body

Example 1

When configuring notification emails for a form, you may use the following values:

  • Subject: Event registration by {%FirstName%} {%LastName%}

FirstName and LastName are the names of fields in the form. As a result, the notification email subjects will contain the first and last name submitted by the user in the related form record.

Example 2

If you enter the Display text value on the General tab of the form like this:

  • Dear {%FirstName%}, thank you for your message. We will contact you shortly.

The text will be resolved as the following when “Jane” was entered in the First name field by the user:

  • Dear Jane, thank you for your message. We will contact you shortly.

Form text localization

If you need to display the form on a multilingual website, you can localize field captions and other text strings using localization macros, e.g.:

  • {myform.fullname}
  • {$=Hello\|de\-de=Hallo\|it\-it=Ciao$}

You can find more details in Localizing text fields.