gpt4 book ai didi

javascript - 如何返回 R Shiny 中聚焦元素的 ID?

转载 作者:行者123 更新时间:2023-11-30 19:28:04 26 4
gpt4 key购买 nike

我在 R Shiny 中有一系列 textInputs,我想在 textOutput 中获取并显示具有焦点的文本框的 ID,即光标在其中闪烁的那个。

我正尝试在 JavaScript 中执行此操作,但收效甚微。

这就是我一直在使用的:

ui <- fluidPage(
tags$script(' Shiny.setInputValue("focused.element", $(document.activeElement )) '),
textInput(inputId = "text1", label = NULL, value = ""),
textInput(inputId = "text2", label = NULL, value = ""),
textInput(inputId = "text3", label = NULL, value = ""),
textInput(inputId = "text4", label = NULL, value = ""),
textOutput("output1")
)

server <- function(input, output, session) {
output$output1 <- renderText({ input$focused.element })
}

我希望当光标位于第一个 textInput 时显示“text1”,当光标位于第二个时显示 text2,等等...

现在,output1 没有显示任何文本。任何帮助将不胜感激!

最佳答案

这个?

library(shiny)
ui <- fluidPage(
tags$script('$(document).ready(function(){ $("input").on("focus", function(e){ Shiny.setInputValue("focusedElement", e.target.id);}); }); '),
textInput(inputId = "text1", label = NULL, value = ""),
textInput(inputId = "text2", label = NULL, value = ""),
textInput(inputId = "text3", label = NULL, value = ""),
textInput(inputId = "text4", label = NULL, value = ""),
textOutput("output1")
)

server <- function(input, output, session) {
output$output1 <- renderText({ input$focusedElement })
}

shinyApp(ui, server)

关于javascript - 如何返回 R Shiny 中聚焦元素的 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56710485/

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