的路要走,如果要触发一些JavaScript功能时的一个小部件的值改变那么你应该看看this文章。你会发现很多支持闪亮的javaScript事件。
让我们来看看一个shiny:inputchanged
事件,因为它你想要做什么:
事件闪亮的:把inputChanged当输入了一个新值,触发例如,当您单击动作按钮,或键入一个文本输入。事件对象具有属性名称(输入的id),值(输入的值)和inputType(输入的类型,例如shiny.action)。
有一个很好的例子,以及
$(document).on('shiny:inputchanged', function(event) {
if (event.name === 'foo') {
event.value *= 2;
}
});
它可通过改变窗口小部件的ID和与alert
功能替换event.value...
可以容易地调整。所以,据我理解你的问题,你正在寻找这个块代码:
$(document).on("shiny:inputchanged", function(event) {
if (event.name === "fTICKER4") {
alert("inputchanged event: Change");
}
});
完整的示例
library(shiny)
ui <- fluidPage(
tags$script('
$(document).on("shiny:inputchanged", function(event) {
if (event.name === "fTICKER4") {
alert("inputchanged event: Change");
}
});
'),
sliderInput("fTICKER4", "Change triggers an event", min = 1, max = 10, value = 5),
sliderInput("other", "Change doesn't trigger an event", min = 1, max = 10, value = 5)
)
server <- function(input, output) {
}
shinyApp(ui, server)