当单击选项卡时,尝试更新flexdashboard中的Sidebar。不能让它起作用。
---
title: "Test Sidebar"
output:
flexdashboard::flex_dashboard:
orientation: rows
runtime: shiny
---
```{r setup}图书馆(柔性仪表板)
图书馆(闪亮)
图书馆(Shinyjs)
useShinyjs(rmd = TRUE)
Sidebar {.sidebar data-width=250}
=======================================================================
```{r}div(id = "one",selectInput("input1",label= "Show a“,choices=c("a","b",”c“)
div(id =“2”,selectInput("input2",label =“仅显示在Tab 1上”,choices=c("d","e",“f”)
<!-- Update the sidebar based on the tab chosen. Generated HTML code shown for tabs-->
Tab 1 <!-- <a href="#section-tab-1" aria-expanded="true" data-toggle="tab"> -->
=======================================================================
```{r}useShinyjs(rmd = TRUE)
shinyjs::onclick(“#节-tab-2”,shinyjs::隐藏(id=“2”))
shinyjs::onclick(“#节-tab-1”,shinyjs::show(id =“2”))
Tab 2 <!-- <a href="#section-tab-2" aria-expanded="true" data-toggle="tab"> -->
=======================================================================
```{r}useShinyjs(rmd = TRUE)
actionButton("hideSlider",“隐藏输入2”)
observeEvent(输入$hideSlider,{
shinyjs::toggle(id = "two", anim = TRUE)})actionButton()和observerEvent()可以正常工作。如有任何建议请见谅。
发布于 2017-01-06 22:20:39
几点意见:
useShinyjs()一次,不需要在每个代码块中调用它。onclick()接受元素的ID。不是选择器- ID。这意味着您调用onclick("element")而不是onclick("#element")。tabsetPanel()时,您要做的事情就是使用所选选项卡的值。只要选择了一个选项卡,就会有一个输入值,给出所选内容的值。我还没有广泛地使用柔性仪表板,所以我不确定是否有类似的方法来获取柔性仪表板中所选选项卡的值。https://stackoverflow.com/questions/41467747
复制相似问题