2016-05-23 2 views
0

Есть ли способ отключить tabPanel до щелчка actionButton? Я попытался сделать это, используя shinyjs, но это не сработало. В настоящее время мой ui.R имеет следующий код. Я хочу отключить tabPanel фильтра, пока не будет нажата кнопка loadButton. `Как отключить tabPanel в shinydashboard?

body <- dashboardBody(
    useShinyjs(), 
    tabsetPanel(id = "tabs", type = 'pills', 
     tabPanel("Load", dataTableOutput("loadTab")), 
     tabPanel("Filter", id='filterTab',dataTableOutput("filteredResults")) 
    )) 
sidebar <- dashboardSidebar(
     sidebarMenu(
     selectInput(inputId = "datasetName",label = 'Dataset', choice=c('Cancer','Normal')), 
     actionButton("loadButton", label = "Load") 
     )) 

` Любая помощь приветствуется.

ответ

1

Я получил его работу с shinyjs. `

jsCode <- " 
shinyjs.disableTab = function() { 
    var tabs = $('#tabs').find('li:not(.active) a'); 
    tabs.bind('click.tab', function(e) { 
     e.preventDefault(); 
     return false; 
    }); 
    tabs.addClass('disabled'); 
} 
shinyjs.enableTab = function(param) { 
    var tab = $('#tabs').find('li:not(.active):nth-child(' + param + ') a'); 
    tab.unbind('click.tab'); 
    tab.removeClass('disabled'); 
} 

" ` А затем включение и отключение вкладок по мере необходимости.

Смежные вопросы