import panel as pn
toggle =pn.widgets.Toggle(value=False)
href = pn.pane.HTML("<a href="https://www.w3schools.com">Visit W3Schools.com!</a>")
Using ReactiveHTML it should be possible:
class Link(pn.reactive.ReactiveHTML):
click = param.Integer(default=0)
_template = """<a id="a" target="_blank" onclick="${script('update_click')}" href="https://www.w3schools.com">Visit W3Schools.com!</a>"""
_scripts = {
"update_click": """
data.click = data.click+1
console.log(data.click)
"""
}
toggle =pn.widgets.Toggle(value=False)
link = Link()
link.jscallback(args={"toggle": toggle}, click="toggle.active = (source.click>0)")
pn.Column(toggle, link)
2 Likes