Soy muy nuevo en Javascript, así que tal vez esto tenga una respuesta muy fácil.
Estoy tratando de crear un panel de búsqueda que me permita filtrar filas en función de un valor de cadena en una columna de un DataTable, específicamente, si el valor incluye una cadena dada, similar a esto (la parte "incluye (Edimburgo)" del panel de búsqueda central), solo en una aplicación brillante, y parece que no puedo averiguar cómo hacer que funcione.
Ya tengo un panel de búsqueda que funciona correctamente para filtrar una columna de número por valor, y el segundo panel de búsqueda está configurado de la misma manera, solo que con una cláusula de retorno diferente, pero solo me muestra una ventana vacía para un panel de búsqueda.
El código es el siguiente:
output$completeTable <- DT::renderDataTable ({ datatable( complete_Table, options = list( dom = "Plfrtip", pageLength = 10, columnDefs = list( list( searchPanes = list ( show = TRUE, options = list( list( label = "big", value = JS("function(rowData, rowIdx) { return (rowData[8] > 10000); }" ) ), list( label = "small", value = JS("function(rowData, rowIdx) { return (rowData[8] < 10000); }" ) ) ) ), targets = 8 ), list( searchPanes = list ( show = TRUE, options = list( list( label = "All", value = JS("function(rowData, rowIdx) { return rowData[3].includes('All'); }" ) ), list( label = "Media", value = JS("function(rowData, rowIdx) { return rowData[3].includes('Media'); }" ) ) ) ), targets = 3 ), list(searchPanes = list(show = FALSE), targets = c(1,2,4:7,9:11) ) ), ), extensions = c('Select', 'SearchPanes') ) }, server = FALSE) Como dije, el primer panel de búsqueda funciona bien por sí solo, pero tan pronto como agrego el segundo, el primero ya no está visible/no está allí y el segundo no tiene ningún dato o etiqueta. Supongo que el problema es que tengo que incluir los términos de búsqueda ("Medios" y "Todos") de una manera diferente, pero no puedo entender cómo.
¡Muchas gracias por adelantado!