shinyjs 不会隐藏使用 renderUI 创建的按钮

     2023-03-24     68

关键词:

【中文标题】shinyjs 不会隐藏使用 renderUI 创建的按钮【英文标题】:shinyjs won't hide button created with renderUI 【发布时间】:2021-06-26 16:14:02 【问题描述】:

我有一个使用 shinyproxy 制作的闪亮应用程序。 在server.R 上,我使用renderUI 创建了一些UI 元素,如下所示:

  output$guess <- renderUI(

    url <- a("Vai al sito", href = text_info()$url,target="_blank")

    tagList(
      div(h4("Osservazioni ancora da classificare:", count_obs()), style = "margin-left: 68%; color: #ff944d;"),
      div(h1("Descrizione Business:"), tags$i(h2(paste(text_info()$info))),
                                     tags$br(),
                                     "Website:", url,
                                     style = "margin-right: 5%;", class = "ui raised segment"),
      tags$br(),
      div(h3(paste("Proposta algoritmo:", text_info()$entity_class_name), style = "margin-right: 0%; color:orange")),
      tags$br(),
      h3(HTML("testo testo")),
      div(selectInput("yncheck", "", choices = c("",data_lookup$entity_class_name)), style = "margin-left: 33%;"),
      tags$br(),
      div( style = "margin-left: 2%",
      tags$button(
        id = "ynapproved", style = "margin-right: 5%; color:green;",
        class = "ui button check-button", "Approva", tags$i(class = "check icon")
      ),
      tags$button(
        id = "yndiscarded", style = "margin-right: 5%; color:red;",
        class = "ui button check-button", "Scarta", tags$i(class = "times icon")
      ),
      tags$button(
        id = "ynsuspend", style = "margin-right: 5%; color:SlateBlue;",
        class = "ui button check-button", "Sospendi", tags$i(class = "hand paper outline icon")
      ),
      tags$br(),
      tags$button(
        id = "submit",style = "margin-top: 5%; margin-right: 3%",
        class = "ui button submit-button", "Salva modifiche", tags$i(class = "save icon"))
      )
    )
  )

ui.R




 library(shiny)
    library(shiny.semantic)
    library(shinyalert)
    library(shinyjs)
    
    semanticPage(
      title = "mYapp",
      includeCSS("www/styles.css"),
      suppressDependencies("bootstrap"),
      useShinyalert(),
      useShinyjs(),
      div(
        class = "ui center aligned grid",
        div(
          class = "ten wide column", align = "center",
          div(
            class = "ui clearing segment",
            div(radioButtons(inputId = "ynswitch", label = "Scegli dataset",
                             choices = c("Dati1",
                                         "Dati2",
                                         "Dati3"),
                             selected='Dati1',
                             inline=TRUE),
                style = "font-size: 13px; font-weight: bold; text-align:left;" ),
            uiOutput("guess")
          )
        )
      )

当用户单击名为ynswitchradioButtons 的特定值时,我想隐藏ynsuspended 按钮。

所以我尝试在server.R 中使用shinyjs

  observeEvent(input$ynswitch, 

    if(input$ynswitch=='Dati2')
      shinyjs::hide("ynsuspend")
  )

但它不起作用。元素未隐藏。

谢谢

【问题讨论】:

您可能还需要else shinyjs::show("ynsuspend"),否则一旦隐藏就无法再次显示。即使ui 中有useShinyjs(),您是否也会遇到此问题? 是的,我在 ui 中有 useShinyjs。尝试了您的建议,但仍然无法正常工作 除非您发布完整的MRE,否则我们无法诊断问题 【参考方案1】:

感谢您的回答。 我使用delay 解决了shinyjs:

https://github.com/daattali/shinyjs/issues/166

【讨论】:

使用 ShinyJS 初始化隐藏元素

】使用ShinyJS初始化隐藏元素【英文标题】:InitalisinghiddenelementswithShinyJS【发布时间】:2020-02-1218:25:17【问题描述】:我想在闪亮的应用程序启动时隐藏一个元素,但与thisexample不同的是,要隐藏的元素是可见的较大元素的一部分... 查看详情

使用 shinyjs 和 flexdashbord 动态显示/隐藏输入

】使用shinyjs和flexdashbord动态显示/隐藏输入【英文标题】:Dynamicallyshow/hideinputwithshinyjsandflexdashbord【发布时间】:2017-05-1823:25:18【问题描述】:点击标签时尝试更新flexdashboard中的侧边栏。无法让它工作。---title:"TestSidebar"output:flex... 查看详情

使用shinydashboard和shinyjs在tabBox中启动时隐藏tabPanel

】使用shinydashboard和shinyjs在tabBox中启动时隐藏tabPanel【英文标题】:HiddentabPanelonstartupwithintabBoxusingshinydashboard&shinyjs【发布时间】:2021-06-1901:04:33【问题描述】:首先让我给你一些与我的问题相关的背景。我正在使用shiny、shiny... 查看详情

使用 shinyjs 切换表单水平输入及其标签

】使用shinyjs切换表单水平输入及其标签【英文标题】:Togglingaform-horizontalinputanditslabelusingshinyjs【发布时间】:2019-11-0720:56:36【问题描述】:下面的应用程序有两个selectInputs(month_abbr和month_full)和一个checkboxInput(abbr)。我想在... 查看详情

Shiny Reactive renderUI 和多个依赖/耦合输入

】ShinyReactiverenderUI和多个依赖/耦合输入【英文标题】:ShinyReactiverenderUIandmultipledependent/coupledinputs【发布时间】:2018-07-0413:44:21【问题描述】:我有以下示例应用程序,我需要能够切换multiple_choice_1_source的输入ORmultiple_choice_2_type... 查看详情

闪亮:使用隐藏标签启动应用程序,没有延迟

...将对用户隐藏,直到他输入正确的密码。我知道如何使用shinyjs::hideTab:library(shiny);library(shinyjs)ui<-fluidPage(useShinyj 查看详情

启用/禁用不使用 flexdashboard+shinyjs

】启用/禁用不使用flexdashboard+shinyjs【英文标题】:Enable/disablenotworkingwithflexdashboard+shinyjs【发布时间】:2020-01-2404:00:57【问题描述】:我知道thisissue并且它显然已经解决了,但我仔细检查了我是否有相关软件包的最新版本,disable... 查看详情

R Shiny - 将tabPanel动态添加到tabsetPanel(使用renderUI)

】RShiny-将tabPanel动态添加到tabsetPanel(使用renderUI)【英文标题】:RShiny-addtabPaneltotabsetPaneldynamically(withtheuseofrenderUI)【发布时间】:2013-10-2812:33:00【问题描述】:我正在开发一个闪亮的应用程序,我在其中使用tabsetPanel,它是在... 查看详情

使用 renderUI 更改页面上的输入顺序

】使用renderUI更改页面上的输入顺序【英文标题】:userenderUItochangetheorderofinputsonpage【发布时间】:2021-11-1510:30:32【问题描述】:我有一个数据输入表单,用户将使用该表单从纸质数据表中输入野生动物捕获数据。纸张有许多相... 查看详情

在 iOS 9 上更改隐藏属性时 UIStackView 不会动画

】在iOS9上更改隐藏属性时UIStackView不会动画【英文标题】:UIStackViewwon\'tanimatewhenchangingthehiddenpropertyoniOS9【发布时间】:2016-11-1618:21:18【问题描述】:我正在使用Stack视图来创建一种表格UI,我在StackView中有6个视图,其中0、2、4... 查看详情

使用 shinyjs 使用 javascript 在闪亮的应用程序中操作现有的传单地图

】使用shinyjs使用javascript在闪亮的应用程序中操作现有的传单地图【英文标题】:ManipulateexistingLeafletmapinashinyappwithjavascriptusingshinyjs【发布时间】:2018-10-0712:47:30【问题描述】:我有一个闪亮的应用程序,其中包含现有的传单地... 查看详情

如何使用 `renderUI` 响应式更新 Shiny 应用程序中的活动菜单项?

】如何使用`renderUI`响应式更新Shiny应用程序中的活动菜单项?【英文标题】:HowcanIreactivelyupdatetheactivemenuIteminaShinyappusing`renderUI`?【发布时间】:2021-03-2119:16:17【问题描述】:我正在构建一个闪亮的应用程序,它可以从数据框中... 查看详情

如何使用shinyjs从闪亮的应用程序物理打印png?

】如何使用shinyjs从闪亮的应用程序物理打印png?【英文标题】:Howtophysicallyprintapngfromashinyappwithshinyjs?【发布时间】:2019-12-0506:53:04【问题描述】:我正在尝试从闪亮的应用程序中物理打印图像,我已经阅读过:RShinyprintcurrentpage... 查看详情

如何使用shinyjs从服务器更改shinydashboard中的标题颜色

】如何使用shinyjs从服务器更改shinydashboard中的标题颜色【英文标题】:Howtochangethetitlecolorinshinydashboardfromserverusingshinyjs【发布时间】:2021-11-1918:16:47【问题描述】:我想从服务器部分更改闪亮仪表板中标题的标题。简单的文本,... 查看详情

闪亮的 renderUI selectInput 返回 NULL

】闪亮的renderUIselectInput返回NULL【英文标题】:ShinyrenderUIselectInputreturnedNULL【发布时间】:2015-08-0309:23:09【问题描述】:我正在尝试使用一个反应模型,其中一个输入会影响多个输出,如闪亮的备忘单中所述。我需要使用renderUI... 查看详情

使用javascript使用shinyjs将数据表导出为shiny中的csv

...用以下基于以下downloadcsv.js创建的外部Javascript函数guide:shinyjs.myfunction=function(ar 查看详情

r示例使用renderui动态调整d3heatmap的大小(代码片段)

查看详情

选择器输入作为过滤器使用shinyJS禁用所有未禁用按钮

】选择器输入作为过滤器使用shinyJS禁用所有未禁用按钮【英文标题】:pickerinputasfilterdisableallnotdisablingbuttonusingshinyJS【发布时间】:2021-08-2813:38:28【问题描述】:希望你保持安全。我已经搜索过类似的问题,但没有成功。我的代... 查看详情