我正在尋找一種通過單擊選項卡內的按鈕在多個選項卡之間切換的方法。在單擊一次按鈕后,我無法找到重置按鈕的方法,因此如果有人多次單擊該按鈕,該應用程式不會失敗。
import dash
import dash_html_components as html
import dash_core_components as dcc
import pandas as pd
from dash.dependencies import Input, Output
app = dash.Dash()
app.layout = html.Div([
html.H1(' Analysis Tool'),
dcc.Tabs(id='tabs-example', value='tab-0', children=[
dcc.Tab(label='tab-0', value='tab-0'),
dcc.Tab(id='tab1', label='tab-1', value='tab-1',children=[
html.Button('button 1', id='submit-val', n_clicks=0,
style={'width':185,'display':'inline-block','padding-right':80})
]),
dcc.Tab(id= 'tab2', label='tab-2', value='tab-2',children=[
html.Button('button 2', id='submit-col', n_clicks=0,
style={'width':185,'display':'inline-block','padding-right':80})
]),
dcc.Tab(id= 'tab3', label='tab-3', value='tab-3',children=[
html.Button('button 3', id='submit-rev', n_clicks=0,
style={'width':185,'display':'inline-block','padding-right':80})
]),
dcc.Tab(id='tab4', label='tab-4', value='tab-4')
]),
html.Div(id='tabs-example-content')
])
@app.callback(Output('tabs-example', 'value'),
[Input('submit-val', 'n_clicks'),
Input('submit-col', 'n_clicks'),
Input('submit-rev', 'n_clicks')])
def on_click_val(click1, click2, click3):
if click1>click2 and click2>=click3:
return "tab-2"
elif click2>=click1 and click2>click3:
return "tab-3"
elif click3>=click1 and click3>=click2:
return "tab-4"
elif click1 == 0 and click2 == 0 and click3 == 0:
return "tab-0"
if __name__ == '__main__':
app.run_server(debug=True)
uj5u.com熱心網友回復:
在這種情況下,您可以使用 Dash Callback Context 來獲取單擊的元素的 ID,因為您的目的是確定單擊了哪個按鈕,而不是單擊了多少次。
@app.callback(Output('tabs-example', 'value'),
[Input('submit-val', 'n_clicks'),
Input('submit-col', 'n_clicks'),
Input('submit-rev', 'n_clicks')])
def on_click_val(click1, click2, click3):
btn = dash.callback_context.triggered[0]["prop_id"].split(".")[0]
if btn == "submit-val":
return "tab-2"
elif btn == "submit-col":
return "tab-3"
elif btn == "submit-rev":
return "tab-4"
else:
return "tab-0"
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/496276.html
標籤:python-2.7 破折号
上一篇:DataFrame中的數字格式