Skip to main content
Version: 1.28 (Current)

Change Tab And Continue Execution

Audience: Low-code Engineers

Skill Prerequisites: Actions, Tokens

Switches a Tabs module on the same page to another tab, then carries on with the next actions. It's available in forms and listings when the Tabs module is installed. It isn't available in API endpoints.

The Tabs module is a container that shows other modules, such as forms and listings, in tabs or an accordion. This action works with both layouts, and with a Tabs module shown on the page or in a popup.

ActionWhat happens after the tab changes
Change Tab And Stop ExecutionNo further actions run.
Change Tab And Continue ExecutionThe tab changes right away and the next actions keep running.

Typical Use Cases​

  • Move to the next step of a wizard, and still save the current step in the same click
  • Switch the tab and show a toast, for example Step 1 saved
  • Switch the tab while a slower action, such as a SQL query or an email, keeps running on the server

Don't use it to​

Action NameDescription
Change Tab And Stop ExecutionChanges the tab and ends execution.
Open Tabs Popup And Continue ExecutionOpens a Tabs module in a popup and keeps running actions.
Close Tabs Popup And Continue ExecutionCloses the popup of a Tabs module and keeps running actions.
Initialize Form And Continue ExecutionLoads a form that's set to manual display.
Display Toast Message And Continue ExecutionShows a short notification and keeps running actions.

Input Parameter Reference​

ParameterDescriptionSupports TokensDefaultRequired
TabsPro ModuleThe Tabs module to change. Pick it from the list, or click EXPR and enter an expression that returns the module's ID, for example [TabsModuleId].Yesempty stringYes
TabThe tab to switch to. The list shows the tabs of the selected module by title. With EXPR, the expression must return the tab's ID in the Tabs module, not its position.Yesempty stringYes
Evaluate stateChecks the show and enable conditions of all tabs again before switching. If the target tab is now hidden or disabled, the nearest available tab is opened instead.NofalseNo
QueryString ParametersName and Value pairs to pass to the new tab. Forms in it get them as [QueryString:Name] tokens. Tokens work in both the name and the value.YesemptyNo

What happens when it runs​

  1. The server replaces the tokens and sends the instruction to the browser right away.
  2. The browser finds the Tabs module on the page. If it isn't loaded yet, it waits up to about 10 seconds.
  3. If Evaluate state is on, the tab conditions are checked again on the server, using the page's query string and the QueryString Parameters.
  4. The tab is switched as if the user clicked it. Forms in the current tab run their On Tab Leave actions, which can stop the switch. Forms in the new tab run their On Tab Enter actions. See Tab events.
  5. Meanwhile, the server keeps running the remaining actions.

Passing values to the tab​

The QueryString Parameters are passed to the new tab:

  • Forms get them in their On Tab Enter actions, as [QueryString:Name] tokens. A form with no On Tab Enter actions ignores them.
  • Listings don't get the values as tokens. Listings set to load or refresh when the tab is activated are loaded again. See Tabs Integration.
  • The address bar. When the Tabs module isn't in a popup, the values are also added to the page's URL, next to the query string that's already there.

In Listings​

On a listing button with Client Button turned on, use the client-side Change Tab action instead. It has the same parameters and changes the tab in the browser without a request to the server. See Item Buttons and Root Buttons.

Its 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.

Considerations​

  • Same page only. The Tabs module must be on the page where the action runs.
  • Use the tab's ID. An expression that returns the tab's title or position doesn't work. If no tab has that ID, nothing happens and no error is shown.
  • Nothing happens if the tab is already open. In the tabs layout, switching to the active tab does nothing, and the QueryString Parameters aren't passed.
  • Conditions aren't checked by default. Without Evaluate state, the action can switch to a tab that's disabled by its enable condition. Turn on Evaluate state when the conditions matter.
  • Values are visible. The QueryString Parameters can end up in the address bar, and users can change query strings. Don't pass secrets, and don't trust them for permissions.
  • Later actions can undo it. A redirect or a page refresh after this action reloads the page, so the Tabs module may open on a different tab.
  • Not in every form event. This action isn't offered in the form's On Page Load, On Preinit and On Init events. Use Change Tab And Stop Execution there. See Form Events.

Examples​

tip

To understand how to use the below examples, please see Running Examples.

1. Go to the next step and confirm​

The first action switches the Tabs module whose ID is in the WizardModuleId token to the tab whose ID is in the ShippingTabId token, and passes the order ID. The second action shows a toast.

[
{
"Title": "Change Tab And Continue Execution",
"ActionType": "TabsProChangeTabAndContinue",
"Description": "Go to the shipping step",
"Parameters": {
"TabsProModuleID": {
"Expression": "[WizardModuleId]",
"Value": "",
"IsExpression": true,
"Parameters": {}
},
"TabId": {
"Expression": "[ShippingTabId]",
"Value": "",
"IsExpression": true,
"Parameters": {}
},
"Refresh": true,
"Params": [
{
"name": "OrderId",
"value": "[OrderId]"
}
]
}
},
{
"Title": "Display Toast Message And Stop Execution",
"ActionType": "ShowToast",
"Description": "Confirm the first step",
"Parameters": {
"Heading": "Step 1 saved",
"Message": "<p>Now choose a shipping method.</p>",
"HideTime": "3000"
}
}
]

Revised 09/27/2026