# How to Show/Hide Button in Embedded View Based on Row Data

**URL:** <https://forum.inductiveautomation.com/t/how-to-show-hide-button-in-embedded-view-based-on-row-data/109252>\
**Category:** Ignition\
**Tags:** perspective\
**Created:** [August 1, 2025, 1:26pm UTC](https://forum.inductiveautomation.com/t/how-to-show-hide-button-in-embedded-view-based-on-row-data/109252 "2025-08-01T13:26:50Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![TechEnlive](https://avatars.discourse-cdn.com/v4/letter/t/3be4f8/32.png) [@TechEnlive](https://forum.inductiveautomation.com/u/TechEnlive)\
**Post date:** [August 1, 2025, 1:26pm UTC](https://forum.inductiveautomation.com/t/how-to-show-hide-button-in-embedded-view-based-on-row-data/109252/1 "2025-08-01T13:26:50Z")

</div>

Hi,  
I have a table in Perspective that uses an embedded view to render each row. Inside this embedded view, I have a red **Stop** button.

I want to **conditionally hide or show this button based on the data from that specific row** — for example, only display it when `PROID = 2`.

How can I access the row data inside the embedded view and use it to control the button’s `visible` property?

Any best practices or examples on how to bind and evaluate row data for visibility would be appreciated.

rowData show something below data:

```python
PRODID: {"NOMINALWEIGHT":{"value":15.748,"style":{"backgroundColor":""}},"INVENTSTYLEID":{"value":"Std","style":{"backgroundColor":""}}},

```

Thanks!

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [August 1, 2025, 1:34pm UTC](https://forum.inductiveautomation.com/t/how-to-show-hide-button-in-embedded-view-based-on-row-data/109252/2 "2025-08-01T13:34:39Z")

</div>

Does your view have an input parameter named `rowData` (exactly that)?

For testing, copy **one** row from the table's `props.data` to be the default value in the parameter.

---

<div class="post-metadata">

**Author:** ![Transistor](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/transistor/32/3380_2.png) [@Transistor](https://forum.inductiveautomation.com/u/Transistor)\
**Post date:** [August 1, 2025, 2:04pm UTC](https://forum.inductiveautomation.com/t/how-to-show-hide-button-in-embedded-view-based-on-row-data/109252/3 "2025-08-01T14:04:03Z")

</div>

And then add an expression binding to the Stop button's `META.visible` property. Something like,  
`{view.params.rowData.PRODID} = 2`

Checks:

- Your post says `PROID = 2`. Your JSON says `PRODID`. Fix one of them!
- Your PRODID JSON looks more complex than just returning a value '2'. Are you sure you've got that right?

---

<div class="post-metadata">

**Author:** ![TechEnlive](https://avatars.discourse-cdn.com/v4/letter/t/3be4f8/32.png) [@TechEnlive](https://forum.inductiveautomation.com/u/TechEnlive)\
**Post date:** [August 1, 2025, 2:23pm UTC](https://forum.inductiveautomation.com/t/how-to-show-hide-button-in-embedded-view-based-on-row-data/109252/4 "2025-08-01T14:23:36Z")

</div>

Thanks for the advice!  
Below are some additional details to help you better understand the current setup and status:  
**rowData contain whole table data not a single row.**

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/c/4/c49c293286ff35ac9faeda18a052ec0b218cbd9c.png)  
 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/a/e/aedc59c2a217965a36cd1f115818da5a00744e41.png)

---

<div class="post-metadata">

**Author:** ![Transistor](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/transistor/32/3380_2.png) [@Transistor](https://forum.inductiveautomation.com/u/Transistor)\
**Post date:** [August 1, 2025, 2:30pm UTC](https://forum.inductiveautomation.com/t/how-to-show-hide-button-in-embedded-view-based-on-row-data/109252/5 "2025-08-01T14:30:25Z")

</div>

> [@TechEnlive](#):
>
> rowData contain whole table data not a single row.

[Table Column Configurations | Ignition User Manual](https://docs.inductiveautomation.com/docs/8.3/appendix/components/perspective-components/perspective-display-palette/perspective-table/table-column-configurations#embedding-a-view-in-a-table-cell) (scroll to the bottom) says,

> `rowData` A JSON object representing table data for the current row. This is equivalent to accessing props.data[row] on the table.

It's not the data for the whole table. It is passed through automatically whether you use it or not.

Please post the text of the logger so we can try it out. (Use the \</\> button to format it as code.)

---

<div class="post-metadata">

**Author:** ![TechEnlive](https://avatars.discourse-cdn.com/v4/letter/t/3be4f8/32.png) [@TechEnlive](https://forum.inductiveautomation.com/u/TechEnlive)\
**Post date:** [August 1, 2025, 6:42pm UTC](https://forum.inductiveautomation.com/t/how-to-show-hide-button-in-embedded-view-based-on-row-data/109252/6 "2025-08-01T18:42:26Z")

</div>

The first image i shared is the log from the logger out put.

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [August 1, 2025, 6:48pm UTC](https://forum.inductiveautomation.com/t/how-to-show-hide-button-in-embedded-view-based-on-row-data/109252/7 "2025-08-01T18:48:43Z")

</div>

> [@TechEnlive](#):
>
> image i shared is the log

image != text

images are often hard to read and are useless for copy & paste. Please follow the instructions of those from whom you hope to get help.
