首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >闪亮:单击选项卡中的按钮会隐藏按钮/问题/单选按钮,并在相同的选项卡中显示结果。

闪亮:单击选项卡中的按钮会隐藏按钮/问题/单选按钮,并在相同的选项卡中显示结果。
EN

Stack Overflow用户
提问于 2022-01-31 18:37:49
回答 1查看 323关注 0票数 0

我有一个包含n个问题的选项卡,每个选项卡都与Likert风格的单选按钮相关。我想以多种不同的方式(情节等)显示选定的答案。而不切换到或创建其他选项卡。相反,我想在用于问题/单选按钮的同一个选项卡中显示结果--即按下按钮隐藏问题、单选按钮和提交按钮,并显示,例如,带有结果的绘图或表格。

我创建了一个MWE,说明了我目前的方法。由于我不知道如何最好地解决这个问题,所以我创建了三个不同的选项卡,名为QuestionsResultsHide,目的是隐藏Results选项卡,直到单击submit按钮,该按钮将显示Results选项卡并隐藏Questions选项卡。我还没有找到隐藏Questions选项卡的方法,这就是为什么我创建Hide选项卡作为测试的原因。

代码语言:javascript
运行
AI代码解释
复制
library(shiny)
library(shinyjs)

ui <- tagList(
    useShinyjs(),
    navbarPage(
        "Hide questions/buttons and display results in same tab",
        id = "navbar",
        tabPanel(title = "Questions",
                 id = "questions",
                 h1("Example questions"),
                 uiOutput("myradios"),
                 actionButton("button", "Run analysis")
        ),
        tabPanel(
            title = "Results",
            value = "results",
            tableOutput("tableOutput"),
            h1("Here are the results"),
            textOutput("txt")
        ),
        tabPanel(
            title = "Hide",
            value = "hide",
            h1("This tab will be hidden when the button in 'Questions' tab is clicked")
        )
    )
)

server <- function(input, output, session) {
    observe({
        hide(selector = "#navbar li a[data-value=results]")
        show(selector = "#navbar li a[data-value=hide]")
    })
    
    output$tableOutput <- renderTable({
        if(input$button > 0){
            toggle(selector = "#navbar li a[data-value=results]")
            toggle(selector = "#navbar li a[data-value=hide]")
        }else{
            NULL
        }
    })
    outputOptions(output, "tableOutput", suspendWhenHidden=F)
    
    nameList <- c("Q1", "Q2")
    questionList <- c("This is question 1", "This is question 2")
    
    all_radios <- list()
    for (i in 1:length(nameList)) {
        all_radios[[i]] <- p(radioButtons(nameList[i], questionList[i], c("Disagree strongly" = "1", "Disagree a little" = "2","Neutral; no opinion" = "3","Agree a little" = "4","Agree strongly" = "5"), inline=T, selected=0))
    }
    
    output$myradios <- renderUI(all_radios)
    
    output$txt <- renderText({
        return(paste("The answers are:", input$Q1, "and", input$Q2, sep=" "))
    })
    
    
}
shinyApp(ui = ui, server = server)

除了上面描述的显而易见的代码之外,这个代码还有很多错误。例如,单击submit按钮再次隐藏“结果”选项卡。

我将非常感谢任何帮助或指点。

编辑:

感谢@YBS的回答,这是一个工作解决方案,它在单击按钮后也隐藏了该按钮:

代码语言:javascript
运行
AI代码解释
复制
library(shiny)
library(shinyjs)

ui <- tagList(
    useShinyjs(),
    navbarPage(
        "Hide questions/buttons and display results in same tab",
        id = "navbar",
        tabPanel(title = "Questions",
                 id = "questions",
                 h1("Example questions"),
                 uiOutput("myradios"),
                 textOutput("txt"),
                 actionButton("button", "Run analysis")
        )
    )
)

server <- function(input, output, session) {
        
    nameList <- c("Q1", "Q2")
    questionList <- c("This is question 1", "This is question 2")
    
    all_radios <- list()
    for (i in 1:length(nameList)) {
        all_radios[[i]] <- p(radioButtons(nameList[i], questionList[i], c("Disagree strongly" = "1",
                                                                          "Disagree a little" = "2",
                                                                          "Neutral; no opinion" = "3",
                                                                          "Agree a little" = "4",
                                                                          "Agree strongly" = "5"),
                                          inline=T,
                                          selected=0))
    }
    
    output$myradios <- renderUI(all_radios)
    
    output$txt <- renderText({
        return(paste("The answers are:", input$Q1, "and", input$Q2, sep=" "))
    })
    
    
    observeEvent(input$button, {
        k <- input$button %% 2
        if (k==1) {
            hide("myradios")
            show("txt")
            hide("button")
        }else {
            show("myradios")
            hide("txt")
        }
    }, ignoreNULL = FALSE)
    
}
shinyApp(ui = ui, server = server)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-01-31 20:19:51

也许你在找这个。

代码语言:javascript
运行
AI代码解释
复制
library(shiny)
library(shinyjs)

ui <- tagList(
  useShinyjs(),
  navbarPage(
    "Hide questions/buttons and display results in same tab",
    id = "navbar",
    tabPanel(title = "Questions",
             id = "questions",
             h1("Example questions"),
             uiOutput("myradios"),
             textOutput("txt"),
             actionButton("button", "Run analysis")
    ),
    tabPanel(
      title = "Results",
      value = "results",
      tableOutput("tableOutput"),
      h1("Here are the results"),
      textOutput("txt1")
    ),
    tabPanel(
      title = "Hide",
      value = "hide",
      h1("This tab will be hidden when the button in 'Questions' tab is clicked")
    )
  )
)

server <- function(input, output, session) {
  observe({
    hide(selector = "#navbar li a[data-value=results]")
    show(selector = "#navbar li a[data-value=hide]")
  })
  
  output$tableOutput <- renderTable({
    if(input$button > 0){
      toggle(selector = "#navbar li a[data-value=results]")
      toggle(selector = "#navbar li a[data-value=hide]")
    }else{
      NULL
    }
  })
  outputOptions(output, "tableOutput", suspendWhenHidden=F)
  
  nameList <- c("Q1", "Q2")
  questionList <- c("This is question 1", "This is question 2")
  
  all_radios <- list()
  for (i in 1:length(nameList)) {
    all_radios[[i]] <- p(radioButtons(nameList[i], questionList[i], c("Disagree strongly" = "1", "Disagree a little" = "2","Neutral; no opinion" = "3","Agree a little" = "4","Agree strongly" = "5"), inline=T, selected=0))
  }
  
  output$myradios <- renderUI(all_radios)
  
  output$txt <- renderText({
    return(paste("The answers are:", input$Q1, "and", input$Q2, sep=" "))
  })
  output$txt1 <- renderText({
    return(paste("The answers are:", input$Q1, "and", input$Q2, sep=" "))
  })
  
  observeEvent(input$button, {
    k <- input$button %% 2
    #print(k)
    if (k==1) {
      hide("myradios")
      show("txt")
    }else {
      show("myradios")
      hide("txt")
    }
  }, ignoreNULL = FALSE)
  
}
shinyApp(ui = ui, server = server)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70935034

复制
相关文章
Flutter中的单选按钮组件Radio
Flutter 中的单选按钮组件有两种。 1. Radio 单选按钮,一般用来表现一些简单的信息。 常用属性如下: (1). value 单选的值; (2). onChanged 选择改变触发的事件; (3). activeColor 选中时的颜色; (4). groupValue 多个按钮选择组的值; 2. RadioListTile 包含更多信息的单选项,提供多种配置信息的属性,可以表现更丰富的信息。 常用的属性如下: (1). value 单选的值; (2). onChanged 选择改变触发的
越陌度阡
2021/01/05
9.8K0
Flutter中的单选按钮组件Radio
单选按钮的用户体验设计
单选按钮是表单系统的一个基本元素。它们被使用在当存在互斥的两个或多个选项列表而用户必须选择其中一个时。换句话说,点选某个尚未选中的单选按钮,之前的选择就会恢复成未选中。 正确的使用单选按钮会非常好—
前朝楚水
2018/04/03
6.3K0
单选按钮的用户体验设计
jQuery Mobile(jqm)按钮的隐藏和显示,包括a标签,圆角和非圆角按钮
在移动互联网时代,HTML5开发越来越收到欢迎。于是各种HTML5的框架都出来了。由于对于jquery的熟悉,jquery mobile 为多数人选择学习的对象。我也是众多追求者之一。最近一直在开发jQuery Mobile的相关应用。并颇有心得,再这里和大家一起分享一下。 好了,我们之间上代码:
业余草
2019/01/21
3.6K0
jQuery Mobile(jqm)按钮的隐藏和显示,包括a标签,圆角和非圆角按钮
Flutter 中的按钮组件
1. onPressed 按下按钮时触发的回调方法,为必填参数,如果值为 null 表示禁用按钮,会显示禁用相关样式;
越陌度阡
2020/12/31
3.1K0
Flat风格的Qml单选/复选按钮
使用Qml的RadioButton与CheckBox控件修改而成。 单选按钮 RadioButton代码 import QtQuick 2.0 import QtQuick.Controls 2.0
Qt君
2019/11/24
2.4K0
单选按钮的取消与选中 原
(adsbygoogle = window.adsbygoogle || []).push({});
tianyawhl
2019/04/04
3.7K0
iOS 单选按钮组--只能而且必选一个按钮
2、初始化并默认一个选项,这里用了4个button,实际可以采用2个,因为写一半才发现后面的汉字也要设置成可点的,就懒得改了,直接改成button了
Python疯子
2018/09/06
4.6K0
iOS 单选按钮组--只能而且必选一个按钮
jquery 默认隐藏div,点击按钮显示,再次点击隐藏
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/106383.html原文链接:https://javaforall.cn
全栈程序员站长
2022/06/30
9.1K0
AngularDart Material Design 单选按钮 顶
具有材料风格的单选按钮。 通常与material-radio-group一起使用。 选中后,无法通过用户操作取消选中相同的单选按钮。
南郭先生
2018/09/30
3.4K0
python的tkinter编程(十)Radiobutton单选按钮,CheckButton复选按钮 的详细解读
Radiobutton单选按钮 CheckButton复选按钮
一写代码就开心
2020/11/20
1.9K0
python的tkinter编程(十)Radiobutton单选按钮,CheckButton复选按钮  的详细解读
动态图表13|单选按钮
今天要跟大家分享的是动态图表13——单选按钮! 本例要讲的单元按钮与复选框的作用类似,只是选择的规则不一样。复选框可以同时选中一个以上,而单元格框则只能一次选中一个,所以在效果上,它与之前我们讲过的数
数据小磨坊
2018/04/10
1.8K0
动态图表13|单选按钮
python开发_tkinter_单选按钮
E | hongtenzone@foxmail.com  B | http://www.cnblogs.com/hongten
Hongten
2018/09/13
1.6K0
python开发_tkinter_单选按钮
odoo 通过Javascript显示或隐藏form自带按钮
odoo14/custom/estate/static/src/js/hide_or_show_form_button.js
授客
2023/05/24
1.8K0
odoo 通过Javascript显示或隐藏form自带按钮
点击按钮平移隐藏与显示div(使用translate)
css3 transform变换后,原来的位置还占据空间,那是因为 transform并没有让元素脱离标准流; 解决方法: 可以考虑在写了transform属性后,结合position:absolute脱离标准流
tianyawhl
2019/04/04
4.2K0
Flutter中的按钮组件Button
1. onPressed  按下按钮时触发的回调方法,为必填参数,如果值为 null 表示禁用按钮,会显示禁用相关样式;
越陌度阡
2022/05/06
4.2K0
Flutter中的按钮组件Button
【HTML】HTML 表单 ② ( 按钮表单 | 普通按钮 | 提交按钮 | 重置按钮 | 图片按钮 | 文件域 )
将 <input /> 标签 的 type 属性设置为 button , 就可以将该 表单组件 设置为 普通按钮 类型表单 ;
韩曙亮
2023/03/30
8.3K0
【HTML】HTML 表单 ② ( 按钮表单 | 普通按钮 | 提交按钮 | 重置按钮 | 图片按钮 | 文件域 )
点击加载更多

相似问题

选项卡上的显示/隐藏按钮选择R闪亮

17

单击next单选按钮后隐藏单选按钮中的隐藏输入

32

活动选项卡以选择闪亮的单选按钮。

16

Dynamic CRM 2011。使用单选按钮隐藏/显示选项卡问题

30

显示/隐藏单选按钮,单击jquery

43
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档