r当multiple=FALSE时,bsCollapse有多个打开的面板

r当multiple=FALSE时,bsCollapse有多个打开的面板,r,shiny,shinybs,R,Shiny,Shinybs,我一直在与shinyBS合作创建一组可折叠面板。在下图中,一次只能打开一个面板(因为参数multiple默认为FALSE),但三个面板可以同时打开 ui.R library(shiny) library(shinyBS) shinyUI(fluidPage( bsCollapse( id = "stuff.all", bsCollapsePanel(title = "Load Data", "Load the files"), bsC

我一直在与shinyBS合作创建一组可折叠面板。在下图中,一次只能打开一个面板(因为参数
multiple
默认为
FALSE
),但三个面板可以同时打开

ui.R

library(shiny)
library(shinyBS)
shinyUI(fluidPage(
      bsCollapse(
        id = "stuff.all", 
        bsCollapsePanel(title = "Load Data", "Load the files"),
        bsCollapsePanel(title = "Set Parameters", "Set the parameters"),
        bsCollapsePanel(title = "Teacher Settings", "Choose the teachers")
      )
))
library(shiny)
library(shinyBS)
shinyServer(function(input, output) {})
server.R

library(shiny)
library(shinyBS)
shinyUI(fluidPage(
      bsCollapse(
        id = "stuff.all", 
        bsCollapsePanel(title = "Load Data", "Load the files"),
        bsCollapsePanel(title = "Set Parameters", "Set the parameters"),
        bsCollapsePanel(title = "Teacher Settings", "Choose the teachers")
      )
))
library(shiny)
library(shinyBS)
shinyServer(function(input, output) {})
是什么导致此
bCollapse
表现为
multiple=TRUE
,我以后如何防止它? 参考:


事实上,我在写问题的时候就明白了这一点,所以我打算回答我自己的问题。

我的示例中
b压缩的
id
是“stuff.all”。一个周期是
id
的一部分这一事实似乎是造成问题的原因。当我将
id
更改为“stuff”时,问题就消失了。当
id
为“stuff.al”或“stuff.a”时,问题仍然存在。当
id
为“stuff.”或“.stuff”时,单击时没有任何面板展开。考虑到
bsCollapse
的工作方式,问题可能是由于HTML
标记的
id
中有一个句点,如下所示:

<div class="panel-group sbs-panel-group" data-sbs-multi="FALSE" id="stuff.a" role="tablist">

在我的示例中,
bsCollapse
id
是“stuff.all”。一个周期是
id
的一部分这一事实似乎是造成问题的原因。当我将
id
更改为“stuff”时,问题就消失了。当
id
为“stuff.al”或“stuff.a”时,问题仍然存在。当
id
为“stuff.”或“.stuff”时,单击时没有任何面板展开。考虑到
bsCollapse
的工作方式,问题可能是由于HTML
标记的
id
中有一个句点,如下所示:

<div class="panel-group sbs-panel-group" data-sbs-multi="FALSE" id="stuff.a" role="tablist">

这与CSS中点运算符的使用有关。阅读更多信息:这与CSS中点运算符的使用有关。请在此处阅读更多信息: