我正在使用RMarkdown和DT软件包在HTML报告中创建动态表格。我尝试添加列筛选器,按照DT软件包文档中的指示添加[filter='top'],以便用户可以单独搜索每个列。然而,当我转换为HTML时,列级别的过滤器存在,但它们无法工作。我正在使用最新版本的R Studio和DT软件包的0.4版本。我做错了什么?
这是输出的样子,但当我在列过滤框中开始输入时,什么也不会发生。输出
---
title: <b>Report</b>
date: Updated `r format(Sys.time(), '%B %d, %Y')`
output:
rmarkdown::html_document:
theme: cosmo
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
library(rmarkdown)
library(DT)
library(htmltools)
library(knitr)
```
###Tab 1: Alphabetic List of Fields
```{r by.field, echo=FALSE,results="asis",warning=FALSE}
#Making the table
fieldname=binned_data$Attribute.from.EHR.database
field_def=binned_data$Definition
field_table=binned_data$Table
fieldtable=data.frame(fieldname, field_def, field_table)
print(htmltools::tagList(
datatable(
fieldtable, colnames=c(
"Field","Definition", "Table"),
filter = 'top',
options = list(autowidth = TRUE,
order = list(list(0, 'asc')),
columnDefs = list(list(className = 'dt-left', targets = c(0,1,2))),
pageLength = 25,
lengthMenu = c(25, 50, 75, 100, 150),
initComplete = JS("
function(settings, json) {
","
$('body').css({
'font-family': 'Century Gothic', 'font-size': '150%'
});
$(this.api().table().header()).css({
'font-family': 'Century Gothic',
'font-size':'125%',
'background-color': '#008000',
'color': '#fff'
});
}
")
),rownames = FALSE
)))
```
这是输出的样子,但当我在列过滤框中开始输入时,什么也不会发生。输出