shiny - 条件面板和单选按钮选择不起作用
问题描述
我正在尝试根据单选按钮上的输入使用条件面板,如下所示
radioButtons("Type","Review Type:",c("Type1","Type2","Type3"),inline=T)
条件面板语句如下,
conditionalPanel(condition = "input.Type == 'Type1'",wellPanel(
radioButtons("Question1", "do you know R shiny?"choices = c("Y","N","NA"),selected = "Y",inline=T)
conditionalPanel(condition = "input.Type == 'Type2'",wellPanel(
radioButtons("Question1", "do you know Python?"choices = c("Y","N","NA"),selected = "Y",inline=T)
conditionalPanel(condition = "input.Type == 'Type3'",wellPanel(
radioButtons("Question1", "do you know Java?"choices = c("Y","N","NA"),selected = "Y",inline=T)
如果您在条件面板中注意到单选按钮 id(“Question1”)在所有条件面板中都是相同的,那么条件对我来说是有效的,但我已经selected = "Y"
为所有单选按钮设置了由于某种原因没有按预期工作(它仅适用于第三个条件面板)
解决方案
它的行为方式是因为你所有的radioButtons
人都有相同的id
,所以它们被认为只是一个 UI 元素。给您radioButtons
一个唯一的名称,这将正常工作:
ui <- fluidPage(
radioButtons(inputId = "Type",
label = "Review Type:",
choices = c("Type1", "Type2", "Type3"),
inline = T),
conditionalPanel(condition = "input.Type == 'Type1'",
wellPanel(
radioButtons(inputId = "Question1",
label = "do you know R shiny?",
choices = c("Y", "N", "NA"),
selected = "Y",
inline = T)
)
),
conditionalPanel(condition = "input.Type == 'Type2'",
wellPanel(
radioButtons(inputId = "Question1",
label = "do you know Python?",
choices = c("Y", "N", "NA"),
selected = "Y",
inline = T)
)
),
conditionalPanel(condition = "input.Type == 'Type3'",
wellPanel(
radioButtons(inputId = "Question1",
label = "do you know Java?",
choices = c("Y", "N", "NA"),
selected = "Y",
inline = T)
)
)
)
推荐阅读
- php - ajax codeigniter 双重依赖下拉菜单
- ios - 使用另一个类的 insertNewObject 添加的行未显示在表视图中
- php - 让 Laravel 5.8 计算其他字段中的数据,而不仅仅是 unsignedInteger
- ios - SwiftUI:.transition 将 ZStack 中的对齐方式从中心更改为顶部?
- java - 在这个程序中,为什么 JOptionPane 条件满足时不显示?
- xcode - xcrun:错误:无法找到实用程序“simctl”,不是开发人员工具或 PATH
- javascript - 使用 axios 发布请求获取错误 400
- django - Django:存储用户在 Django 项目中共享的上传文件(pdf、文档)的最佳位置在哪里?
- apache-kafka - 当记录处理时间超过“max.poll.interval.ms”时,偏移提交会发生什么?
- docker - 端口绑定8080时Docker无法访问Host中的应用程序