gpt4 book ai didi

r - 在 Shiny 中具有一个事件处理程序的多个 Action 按钮?

转载 作者:行者123 更新时间:2023-12-03 18:38:22 26 4
gpt4 key购买 nike

我想在一个页面上有可变数量的相同 actionButton()s,全部由一个 observeEvent() 函数处理。

例如,在表格的可变长度表格中,我希望每个内部表格都有一个按钮,链接到该表格的更多信息。

在标准 HTML 中,您可以使用一个简单的表单来完成此操作,您可以在其中使用隐藏的输入来指定内部表格编号,如下所示:

<form ...>
<input id="table_number" type="hidden" value="1"/>
<input type="submit" value="Examine"/>
</form>

当按下按钮时,您可以检查隐藏的输入以查看它是哪一个。

有没有办法在 Shiny 中做到这一点?我想出的唯一解决方案是给每个 actionButton() 自己的 inputId。这需要为每个按钮单独使用observeEvent()。那些必须提前创建,施加最大数量的按钮。

最佳答案

我只花了几年时间,但现在我对这个问题有了更好的答案。您可以使用 JavaScript/jQuery 函数在文档中的每个按钮上放置一个点击事件处理程序,然后使用 Shiny.onInputChange() 函数将已单击的按钮 ( <button id="xxx"... ) 的 ID 传递给单个观察者在你的 Shiny 代码中。

One observer for all buttons in Shiny using JavaScript/jQuery 上有完整的代码示例说明

关于r - 在 Shiny 中具有一个事件处理程序的多个 Action 按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39707097/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com