2014-11-12 3 views
6

Я пытаюсь построить блестящее приложение, которое использует DataTable FixedColumns плагин:R: Как вы инициализируете datatables FixedColumns javascript в Shiny?

https://datatables.net/extensions/fixedcolumns/

datasest Я использую будет иметь около 100 столбцов, и я хочу, чтобы установить первые пять колонок и позволяют пользователю прокрутите остальные. Из примеров, похоже, мне нужно бы использовать этот JavaScript:

https://datatables.net/release-datatables/extensions/FixedColumns/examples/two_columns.html

$(document).ready(function() { 
    var table = $('#example').DataTable({ 
     scrollY:  "300px", 
     scrollX:  true, 
     scrollCollapse: true, 
     paging:   false 
    }); 
    new $.fn.dataTable.FixedColumns(table, { 
     leftColumns: 2 
    }); 
}); 

Я не знаю, Javascript, но в прошлом я был в состоянии использовать I(), чтобы вставить параметры JavaScript , На этот раз, хотя похоже, что мне нужно сделать что-то еще. Я попытался ниже код и получаю сообщение: «ОШИБКА:..„Параметры“должен быть именованным список»

library(shiny) 
library(ggplot2) 
data(diamonds) 
hw <- diamonds 

runApp(
    list(ui=(
    fluidPage(
     tabsetPanel(
     id = 'dataset', 
     tabPanel('hw', dataTableOutput('mytable1')) 
    ))), 

    server = (function(input, output, session) { 
     output$mytable1 <- renderDataTable(
     head(hw, 50), 
     options = list(scrollY = '300px', 
         scrollX = TRUE, 
         scrollCollapse = TRUE, 
         paging = FALSE, 

         I("new $.fn.dataTable.FixedColumns(table, { 
         leftColumns: 5 
         });") 
         )) 


    }) 

)) 
+0

Я имел такую ​​же проблему/вопрос, который я не нашел ясно объяснение того, как это сделать/пример в любом месте. – numbercruncher

ответ

0
list(tags$head(tags$script('type = "text/javascript"', ' 
     $(document).ready(function() { 
      var table = $("#example").DataTable({ 
       "scrollY": "300px", 
       "scrollX": "100%", 
       "scrollCollapse": true, 
       "paging": false 
      }); 
      new $.fn.dataTable.FixedColumns(table); 
     }); 
'))) 
Смежные вопросы