Open Form Popup And Continue Execution
Audience:
Low-code EngineersSkill Prerequisites:
Actions,Forms,Tokens
Opens a Form module in a popup on the current page, then carries on with the next actions. It's available in forms and listings.
The Form you open must be on the same page. A common setup is to set its Display Mode to Manual, so it stays hidden until this action opens it. See Display Mode.
| Action | What happens after the popup opens |
|---|---|
| Open Form Popup And Stop Execution | No further actions run. |
| Open Form Popup And Continue Execution | The popup opens right away and the next actions keep running. |
Typical Use Cases
- Open a follow-up form, such as a survey, and still save the current submission
- Open a form in a popup and log or track that it was opened
- Open a form while a slower action, such as a SQL query, runs on the server
Don't use it to
- End the actions after the popup opens. Use Open Form Popup And Stop Execution instead.
- Open a Tabs module in a popup. Use Open Tabs Popup And Continue Execution instead.
- Open a page or a form on another page in a popup. Use Redirect To Url with Open in Popup instead.
- Pass values that the next actions calculate. They haven't run yet when the popup opens.
Related Actions
| Action Name | Description |
|---|---|
| Open Form Popup And Stop Execution | Opens the same popup and ends execution. |
| Close Form Popup And Stop Execution | Closes a Form popup and ends execution. |
| Close Form Popup And Continue Execution | Closes a Form popup and keeps running the next actions. |
| Open Tabs Popup And Continue Execution | Opens a Tabs module in a popup and continues. |
| Initialize Form And Continue Execution | Loads a form on the page without a popup and continues. |
| Redirect To Url | Can open any URL in a popup, including a page on another site. |
Input Parameter Reference
| Parameter | Description | Supports Tokens | Default | Required |
|---|---|---|---|---|
| Select Module | The Form module to open. The list shows the Form modules on the site, as Title (#ModuleId). Click EXPR to enter a module ID, such as 1234, or a token that holds one. The module's unique ID (a GUID) also works. The action fails if it's empty or doesn't match a module. | Yes | empty string | Yes |
| Reinitialize Form | Loads the form again each time it opens, with fresh values. When it's off, the form is loaded the first time it opens. After that, reopening it shows it as the user left it. | No | false | No |
| QueryString Parameters | Name and value pairs sent to the form when it loads. The form reads them as [QueryString:Name] tokens in its On Preinit and On Init actions. Tokens in both the names and the values are replaced before they're sent. | Yes | empty | No |
| Allow user additional methods to close the popup | Lets the user close the popup by clicking outside it or pressing Esc, as set by the two options below. When it's off, neither works. | No | true | No |
| Close on clicking outside | Closes the popup when the user clicks outside it. Shown when Allow user additional methods to close the popup is on. | No | true | No |
| Close on escape | Closes the popup when the user presses Esc. Shown when Allow user additional methods to close the popup is on. | No | true | No |
When the popup opens
The popup is sent to the browser as soon as the action runs, and the browser opens it right away. Meanwhile, the server keeps running the remaining actions. So the user sees the popup while the rest of the actions are still working.
How the popup opens
- The popup comes from the Form's own settings. Its width is the Form's Popup Width, on screens wider than 767 pixels. Its title is the Form's Popup Name. There are no size or title settings on the action.
- Passing values. Values in QueryString Parameters are added to the query string of the current page and sent to the form. If a name is already in the page's query string, the action's value wins. Values are URL-encoded for you, so don't encode them yourself.
- Values are only sent when the form loads. With Reinitialize Form off, the form loads only the first time the popup opens. Opening it again, with different values, shows the form that's already loaded. Turn on Reinitialize Form whenever the values change, for example a different record ID on each listing row.
- One popup per form. If the form's popup is already open, the action does nothing.
- The × button always works. The close options only control clicking outside and the Esc key. The × in the popup header always closes it.
In Listings
Listings also have Open Form Popup, a client-side version of this action. It's only available on buttons with Client Button turned on. It runs in the browser as soon as the button is clicked, without a request to the server.
It has the same parameters as this action. The differences:
- Tokens are replaced when the listing loads, not when the button is clicked. On an item button, that's when the row is shown, so the row's values, such as
[Id], are available. On a root button, only values that don't depend on a row are. - There's no Stop or Continue. A client button only runs client-side actions, one after another.
Considerations
- The Form must be on the page. If the chosen Form isn't on the current page, nothing opens and the browser console shows an error.
- The form's Show Form Condition still applies. If the user can't see the form, the popup doesn't open. The browser console shows
Could not find popup for ... form. - Later actions can close it. A redirect or a page refresh after this action removes the popup along with the page. So does Close Form Popup And Stop Execution for the same form.
- Not in APIs, workflows or User Guides. The action runs JavaScript in the browser, so it's only available in forms and listings.
- Conditions. To open the popup only in some cases, give it a condition, for example
"[Status]" == "Draft". See Common Parameters.
Examples
To understand how to use the below examples, please see Running Examples.
1. Ask for feedback after a submission
Put this action on a submit button, before the actions that save the data. It opens the feedback Form module 1234 and passes the new ticket's number. The actions after it still save the submission. The form is reloaded each time, so the ticket number is always current.
{
"Title": "Open Form Popup And Continue Execution",
"ActionType": "OpenAFPopupAndContinue",
"Description": "Open the feedback form",
"Parameters": {
"ModuleId": "1234",
"ReinitForm": true,
"Params": [
{
"name": "TicketId",
"value": "[TicketId]"
},
{
"name": "Source",
"value": "SupportForm"
}
],
"AllowUserClose": true,
"CloseOnClick": true,
"CloseOnEscape": true
}
}
2. Open a required form the user can't dismiss
This action opens the terms Form module 5678 when AcceptedTerms is False. Clicking outside and Esc don't close it. Only the × button, or a Close Form Popup action in the form, does.
{
"Title": "Open Form Popup And Continue Execution",
"ActionType": "OpenAFPopupAndContinue",
"Description": "Ask the user to accept the terms",
"Condition": "\"[AcceptedTerms]\" == \"False\"",
"Parameters": {
"ModuleId": "5678",
"ReinitForm": false,
"AllowUserClose": false
}
}
Revised 09/27/2026