# Button to trigger another .show() on the same page

**URL:** <https://discourse.holoviz.org/t/button-to-trigger-another-show-on-the-same-page/2240>\
**Category:** Panel\
**Tags:** heroku, panel\
**Created:** [May 1, 2021, 7:26pm UTC](https://discourse.holoviz.org/t/button-to-trigger-another-show-on-the-same-page/2240 "2021-05-01T19:26:59Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![alonsht](https://discourse.holoviz.org/letter_avatar_proxy/v4/letter/a/c4cdca/32.png) [@alonsht](https://discourse.holoviz.org/u/alonsht)\
**Post date:** [May 1, 2021, 7:26pm UTC](https://discourse.holoviz.org/t/button-to-trigger-another-show-on-the-same-page/2240/1 "2021-05-01T19:26:59Z")

</div>

Hey

I have a program that has 2 pages  
one page where I upload files and an “upload” button that triggers a show\_plots(files) function, its output is plots.show(). When I run it locally, i just get another server in a new tab which is ok for me. Yet, when I deploy the app to heroku it does not work…  
Can I somehow tell my program to trigger the .show() on the current server instead?

Thanks in advance for the help 🙂

---

<div class="post-metadata">

**Author:** ![ahuang11](https://discourse.holoviz.org/user_avatar/discourse.holoviz.org/ahuang11/32/4947_2.png) [@ahuang11](https://discourse.holoviz.org/u/ahuang11)\
**Post date:** [May 2, 2021, 2:05am UTC](https://discourse.holoviz.org/t/button-to-trigger-another-show-on-the-same-page/2240/2 "2021-05-02T02:05:17Z")

</div>

Maybe you can use

```auto
tabs = pn.Tabs()
def show_trigger():
    tabs.append(plot)

```

---

<div class="post-metadata">

**Author:** ![Marc](https://discourse.holoviz.org/user_avatar/discourse.holoviz.org/marc/32/24_2.png) [@Marc](https://discourse.holoviz.org/u/Marc)\
**Post date:** [May 2, 2021, 6:36am UTC](https://discourse.holoviz.org/t/button-to-trigger-another-show-on-the-same-page/2240/3 "2021-05-02T06:36:50Z")

</div>

Hi @alonsht

My understanding is that on Heroku you would not easily be able to use `.show()`. The reason is that it starts a new server that runs on **another port**. Heroku does not expect and forward that port. On your local laptop you can access all ports without problems.

The simplest solution would something like @ahuang11 is hinting at. Try showing the plot in the same app. For example by adding a new Tab.

You can also take a look at the example [Download upload csv — Panel 0.11.3 documentation (holoviz.org)](https://panel.holoviz.org/gallery/param/download_upload_csv.html#param-gallery-download-upload-csv) for inspiration. This showcases how to upload a csv file and show the data in a Plotly plot.
