Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在闪亮的仪表板侧栏中手动展开子菜单_Javascript_R_Shiny_Shinydashboard - Fatal编程技术网

Javascript 如何在闪亮的仪表板侧栏中手动展开子菜单

Javascript 如何在闪亮的仪表板侧栏中手动展开子菜单,javascript,r,shiny,shinydashboard,Javascript,R,Shiny,Shinydashboard,我试图手动展开闪亮仪表板侧边栏中的子菜单。updateBitEMS功能仅适用于普通菜单,而不适用于嵌套菜单 下面是一个基本示例(从updateBitEMS文档中修改)来说明问题。如果单击“切换选项卡”,它将切换菜单,但不会展开第一个有子菜单的菜单。它似乎只选择了子菜单,但没有展开树 库(闪亮) 图书馆(shinydashboard) ui我帮助自己定义了一些JavaScript,在shiny中使用JavaScript界面extendShinyjs: js$selectMenuItem(0) js

我试图手动展开闪亮仪表板侧边栏中的子菜单。
updateBitEMS
功能仅适用于普通菜单,而不适用于嵌套菜单

下面是一个基本示例(从
updateBitEMS
文档中修改)来说明问题。如果单击“切换选项卡”,它将切换菜单,但不会展开第一个有子菜单的菜单。它似乎只选择了子菜单,但没有展开树

库(闪亮)
图书馆(shinydashboard)

ui我帮助自己定义了一些JavaScript,在shiny中使用JavaScript界面
extendShinyjs

js$selectMenuItem(0)
js$selectMenuSubItem(2)

useShinyjs(), 
extendShinyjs(text = jsSelectMenuItem), 
extendShinyjs(text = jsSelectMenuSubItem)
选择菜单项i
jsSelectMenuItem感谢您的解决方案。最终我找到了一种方法,使用shinyjs
shinyjs::delay(100,shinyjs::addClass(“admin”,“active”))
whre“admin”是菜单的id。@Geovany菜单的id到底是什么意思?MenuItems和MenuItems没有ID,所以我有点困惑。@Marcpah我刚才说的是允许您在服务器端创建菜单的
menuItemOutput
函数。在该函数中,唯一的参数是
utputId
jsSelectMenuItem <- "shinyjs.selectMenuItem = function(i){
    setTimeout(function(){
        $('.treeview > a').eq(i).click();
    }, 200);
}"
jsSelectMenuSubItem <- "shinyjs.selectMenuSubItem = function(i){
    setTimeout(function(){
        $('.treeview-menu > li > a').eq(i).click();
    }, 800);
}"