我正在尝试在 DT 数据表中使用此 JS 脚本(来自此网站:https://datatables.net/blog/2021-09-17):
var fsrco = $('#fuzzy-ranking').DataTable({ fuzzySearch: { rankColumn: 3 }, sort: [[3, 'desc']] }); fsrco.on('draw', function(){ fsrco.order([3, 'desc']); });
使用此脚本标记:
“//cdn.datatables.net/plug-ins/1.11.3/features/fuzzySearch/dataTables.fuzzySearch.js”
我想将其合并到 Shiny 应用程序中的 DT 数据表函数中,其中使用排名顺序应用模糊搜索(顶部相似度较高),但是,我不希望显示排名列。 p>
类似这样,但不显示排名列。
一些基本的常规示例:
library(shiny) library(DT) js <- c( " var fsrco = $('#fuzzy-ranking').DataTable({", " fuzzySearch: {", " rankColumn: 3", " },", " sort: [[3, 'desc']]", "});", "fsrco.on('draw', function(){", " fsrco.order([3, 'desc']);", "});" ) ui <- fluidPage( DTOutput("table") ) server <- function(input, output, session){ output[["table"]] <- renderDT({ datatable( iris, selection = "none", editable = TRUE, callback = JS(js), extensions = "KeyTable", options = list( keys = TRUE, url = "//cdn.datatables.net/plug-ins/1.11.3/features/fuzzySearch/dataTables.fuzzySearch.js" ) ) }) } shinyApp(ui, server)
这个插件是一个旧插件,它不适用于最新版本的 DataTables。
但是我们可以采用计算相似度的 JavaScript 函数,并通过 SearchBuilder 扩展在自定义搜索中使用它。
首先,复制此 JavaScript 代码并将其保存在名称 levenshtein.js 下: