簡體   English   中英

如何在 DT::datatable 中禁用 scrollX

[英]How can I disable scrollX in DT::datatable

我有一個using DT::datatable呈現的表。 我想要 Y 滾動但沒有 X 滾動,也沒有長線的換行。 我找到了Scroller擴展,但我無法禁用 X 滾動

例子:

---
title: "dt_render"
output: html_document
---

```{r render dt, echo = FALSE, message = FALSE}
library(DT)
DF = data.frame(x = 1:100, y = rep("a really really really really really really really really really really really really really really really really really really really really really really really long line", 100))
datatable(
  DF, 
  extensions = c('Buttons', 'Scroller'), 
  options = list(
    dom = 'Bfrtip',
    buttons = c('colvis','csv'),
    deferRender = TRUE,
    scrollY = 200,
    scroller = TRUE,
    scrollX = FALSE
  ),
  class = 'display compact nowrap'
)

```

輸出:

輸出

下面解決它。

我對看起來很糟糕的width = 1000不滿意,還有更好的嗎?

---
title: "dt_render"
output: html_document
css: styles.css
---

```{r render dt, echo = FALSE, message = FALSE}
library(DT)
DF = data.frame(x = 1:100, y = rep("a really really really really really really really really really really really really really really really really really really really really really really really long line", 100))
datatable(
  DF, 
  extensions = c('Buttons', 'Scroller', 'KeyTable'), 
  width = 1000,
  options = list(
    dom = 'Bfrtip',
    buttons = c('colvis','csv'),
    scrollY = 200,
    scroller = TRUE,
    keys = TRUE    
  ),
  class = 'display compact nowrap'
)

```

在css文件中

.dataTables_scrollBody
{
 overflow-x:hidden !important;
 overflow-y:auto !important;
}

輸出:

在此處輸入圖像描述

這對我有用:

在 css 文件中(或在 Scroller 擴展的 datatables.css 行中):

  1. 要禁用 x 滾動,我添加了:

     .dataTables_scrollBody{ overflow-x:hidden !important; overflow-y:auto !important; }
  2. 為了禁用長行的換行,我評論了這些行:

     /* div.dts tbody th,div.dts tbody td{ white-space:nowrap } */

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM