单击 Dash 中的按钮提交后如何清除输入?

How to clear input after clicking in button submit in Dash?

我试图在单击并使用提交按钮返回结果后清除破折号中的 dcc.input,但我做不到。我不知道我做错了什么,你能帮忙吗? 我已经阅读了这个链接:

这是我的提交代码:

    html.Div(children=[
            html.Div(children=[
            html.P('Requester', className='Requester'),
                dcc.Input(id='requester', value='', placeholder='Enter the requester', type='text'),
            html.Div(id='my-requester'),
            ]),
            html.Button('Submit', id='submit-val', n_clicks=0),
            html.Div(id='container-button-basic',
                children='Enter a value and press submit')    
        ]),
    ]
)

@app.callback(
    Output('container-button-basic', 'children'),
    Input('submit-val', 'n_clicks'),
    State('requester', 'value')
)
def update_output(n_clicks, requester):
    if n_clicks > 0:
        print(requester)
        return [n_clicks, requester]

我只是想在点击提交后清除一个文本框,或者在最坏的情况下执行一个清除按钮来清除我在破折号中的文本框。

提前致谢, 里卡多·丰塞卡

您只需要像这样在回调中添加第二个 Output

Output('requester', 'value')

并让您的回调 return 另一个值,并将其设为空字符串。这是一个例子:

return [n_clicks, requester], ''