Я реализовал пример таблицы данных в Shiny, где можно выполнять поиск по всей таблице (используя поле поиска в правом верхнем углу) и/или внутри определенного столбца (используя поля поиска над столбцами). .
Интеллектуальный поиск (например, при поиске «Ma W» отображается «Mazda RX4 Wag») отлично работает для всех полей поиска, когда таблица данных обрабатывается на стороне клиента (SERVER = FALSE).
Однако, если таблица данных обрабатывается на стороне сервера (SERVER = TRUE), интеллектуальный поиск работает только для поиска по всей таблице данных, но перестает работать для поиска по столбцу.
Есть ли способ включить интеллектуальный поиск также для столбцов с обработкой на стороне сервера?
Заранее спасибо.
[img]https://i.stack.imgur. com/t5qCr.png[/img]
library(DT)
library(shiny)
ui = fluidPage(
fluidRow(
column(width = 12,
DTOutput("dtable")
)
)
)
server = function(input, output, session) {
data = data.frame(
car = c("Mazda", "Mazda RX4", "Mazda RX4 Wag", "Ford", "Mercedes"),
pet = c("dog", "dog", "cat", "cat", "cat")
)
output$dtable = renderDT({
js = c(
"function(settings) {",
" var instance = settings.oInstance;",
" var table = instance.api();",
" var $inputs = instance.parent().find('.form-group input');",
" $inputs.off('keyup search input').on('keyup', function() {",
" var value = $(this).val();",
" if(value !== '') {",
" var index = 1 + $inputs.index(this);",
" var column = table.column(index);",
" column.search(value, false, true, true).draw();", # -> regex, smart, caseInsensitive
" }",
" });",
"}"
)
datatable(
data, filter = "top",
options = list(
dom = "ft",
columnDefs = list(
list(targets = "_all", className = "dt-center")
),
search = list(regex = FALSE, smart = TRUE, caseInsensitive = TRUE), # -> is redundant due to the following up js = c(...) part
initComplete = JS(js)
)
)
}, server = FALSE) # -> switch for client-side (server=FALSE) or server-side (SERVER=TRUE) processing
}
shinyApp(ui = ui, server = server)
Подробнее здесь: https://stackoverflow.com/questions/783 ... le-columns
Включить интеллектуальный поиск на стороне сервера в столбцах с данными ⇐ Jquery
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как включить интеллектуальный поиск на стороне сервера в таблице данных DT?
Anonymous » » в форуме Jquery - 0 Ответы
- 10 Просмотры
-
Последнее сообщение Anonymous
-