---
title: "Hiding and Showing Fields Dynamically"
url: "https://helpcentre.esayworkmobile.co.uk/en/article/hiding-and-showing-fields-dynamically"
language: "en"
last_updated: "2025-06-12T12:55:01.208Z"
---

# Hiding and Showing Fields Dynamically

In addition to performing calculations and validation, you can also you expressions to evaluate a result and then determine whether to hide or show a widget on your form.

For this example we're going to build a simple form with a drop-down list that asks the user to supply a payment method from the following options:-

-   Mastercard
-   Visa Debit
-   Cash
-   Other

  
If the user selects other from the list, we'll then 'reveal' an additional text box to allow the user to type in their 'other' payment method. To begin, create a new form with a single dropdown list and configure as per screenshot below:

![](https://d2x3xhvgiqkx42.cloudfront.net/9b95b20b-0d92-44a6-a8ed-f00ed68183a1/b3237f67-f110-418a-ab8c-505fe52bf801/2020/02/11/a23ef02d-0dfe-4733-ae5d-1a8b2046876e/42216e75-869d-4568-b108-157950b98f11.png)

> Tip
> 
> You'll notice that we've set the Unique Name property to payment\_method. This just makes it easier to reference the widget when we refer to it within an expression, so rather than refer to it as 'Preferred Payment Method', we can use the simpler and shorter reference of 'payment\_method'

Next, we're going to add the text box that we'll be using to capture 'other' payment method. In order to have this hidden until the user selects 'Other' from the payment method dropdown list, we'll need to add the following expression into the **Hidden** property. To do this, click the Hidden property dropdown and select formula. This will reveal and additional box below in which you can enter the following expression :

```plaintext
=NOT('payment_method'="Other")
```

  
Your form should now look like the below:

![](https://d2x3xhvgiqkx42.cloudfront.net/9b95b20b-0d92-44a6-a8ed-f00ed68183a1/b3237f67-f110-418a-ab8c-505fe52bf801/2020/02/11/4d852598-9282-4650-8d47-2817efed356f/6f76dd0a-b053-4973-ad3f-328895aab5b9.png)

Effectively this is keeping the **Other** textbox widget hidden while the value of **payment\_method** is not *Other**.***  
  
You can hide and show any widget on a form that has a **hidden** property.  
  
Go ahead and try this on the App and you'll see that when you first load the form, the **Other** textbox won't be visible unless you select *Other* from the **Preferred Payment Method.**
