Black Lives Matter. Please consider donating to Black Girls Code today.

Callback trigger before html.A link launch

So my goal is to modify the href attribute of html.A component when the user click on the button that link to the html.A component.
I tried this solution:

html.A(dbc.Button("Save", id='save_button'), id='link', download='', href=''))

But when I click the button the link is launch before the callback of the button trigger.

Is there any solution for this problem?