gpt4 book ai didi

javascript - 如何在Shiny服务器端使用DataTable行的 "selected"类?

转载 作者:行者123 更新时间:2023-12-03 07:57:55 24 4
gpt4 key购买 nike

假设我有以下应用程序:

library(shiny)
library(DT)

ui <- fluidPage(
fluidRow(columns = 12,
DT::dataTableOutput("my_table"),
actionButton("resolve", "Resolve Names"))
)

server <- function(input, output) {
output$my_table <- DT::renderDataTable({
dat <- data.frame("Names" = c("Bryan", "Byran", "Allison", "Alison"))
return(DT::datatable(dat))
})

observeEvent(input$resolve, {
# do some stuff using the selected rows from DT
})
}

shinyApp(ui = ui, server = server)

我希望能够单击表中的“Bryan”和“Byran”,然后单击“解析”按钮并让 Shiny 使这两个值彼此相等。我不需要帮助如何使值彼此相等,我只需要知道如何从 DT 捕获数据并将其返回到服务器端进行处理。

更具体地说,有没有办法将 JS 值传回服务器?因为我知道我可以使用 JQuery 获取数据(注意,这段代码实际上可能不是一个有效的示例,但应该能说明问题):

$('#resolve').click(function(){
var cells = new Array();
$('#my_table tr').each(function(){
if ($(this).attr("class")[1] === "selected") {
cells.push($(this).html());
});

我已经看到了有关此问题的其他几个问题( hereherehere ),但我似乎无法得到他们对我有用的答案。看起来我只需要在 datatable 函数中使用回调,但我不希望它触发,除非按下“解决”按钮。

感谢任何帮助/见解。

最佳答案

在此页面上,他们讨论了行选择:rstudio.github.io/DT/shiny.html,并且这里还有一个示例:yihui.shinyapps.io/DT-rows。这是你想要的?

关于javascript - 如何在Shiny服务器端使用DataTable行的 "selected"类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34725550/

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