- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
Shiny 提供了一个包装 selectize.js
的 selectizeInput
,它会生成一个文本输入/组合框小部件。我想延迟加载 selectizeInput 的选项/值有几个原因:可能有很长的值列表,或者可能的值取决于其他参数。此外,我希望用户能够创建新值(例如,选择现有值或创建自己的值)。
但是在所有这些情况下,不能使用 Shiny 的服务器端书签来为 selectizeInput 的值添加书签。初始化 selectizeInput 对象时,存储在 input
中的书签值还不是有效的选项值。
有没有人有任何巧妙的解决方法来为 selectizeInput 值添加书签?
这是仅处理 create
选项的最简单示例:
library(shiny)
ui <- function(request) {
fluidPage(
selectizeInput("foo", "Created Values Cannot Be Bookmarked", choices=c("Choose From List or Type New Value"="", "bar", "baz"),
options=list(create=TRUE)),
bookmarkButton("Update URL")
)}
server <- function(input, output) {
onBookmarked(function(url) {
updateQueryString(url)
})
}
shinyApp(ui = ui, server = server, enableBookmarking = "server")
如果您在选择框中键入新值,点击书签按钮更新浏览器地址栏中的 URL,然后点击重新加载,则创建的值将会丢失。尝试对现有选项进行同样的操作,当然可以。
如果延迟加载选项会变得更复杂,但问题是一样的,即在 selectizeInput
渲染时用户的选择无效。
最佳答案
这是一个更好的解决方案,它使用服务器端支持 selectize。支持 create=TRUE
选项的重要步骤是使用 onRestored
使用用户创建的新值更新选项。
library(shiny)
init.choices <- c("Choose From List or Type New Value"="")
ui <- function(request) {
fluidPage(
titlePanel("Bookmarking Created Values"),
selectizeInput("foo", NULL,
choices=init.choices,
multiple=TRUE,
options=list(create=TRUE)),
bookmarkButton("Update URL")
)}
server <- function(input, output, session) {
updateSelectizeInput(session, "foo", choices=c(init.choices, rownames(mtcars)), server=TRUE)
onBookmarked(function(url) {
updateQueryString(url)
})
onRestored(function(state) {
updateSelectizeInput(session, "foo", selected=state$input$foo, choices=c(init.choices, rownames(mtcars), state$input$foo), server=TRUE)
})
}
shinyApp(ui = ui, server = server, enableBookmarking = "server")
关于shiny - 如何使用动态选项为 Shiny selectizeInput 添加书签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49723322/
我有一个带有 X 个选项的 selectizeInput。我的想法是它应该提供一种带有 X 选项的输入框,但我希望这些选项是可编辑的。我的意思是,如果我选择一个选项并且我想要编辑它的一部分而不是被迫单
我使用 selectizeInput 来获得可自动完成的单词列表,如下面的应用程序所示。 server <- function(input, output) { output$word <-
我试图允许用户在 selectizeInput 中键入值,以从长列表中查找他们正在搜索的内容(从而避免滚动操作)。当用户删除默认值“None”(在本例中)时,他们会被踢出输入框,必须返回并输入他们要查
我想知道是否有可能在 Shiny 中创建类似“selectIcon”的东西。我想要一个仅包含图标或例如的选择器颜色。 selectizeInput('colours', '',
我想在 shiny 中自定义一个 selectizeInput,类似于 https://selectize.github.io/selectize.js/ 中的示例。值和标签应该不同,并且应该可以选择
我想将 selectizeInput() 添加到我 Shiny 的应用程序的标题行中。此外,我想将标题向左对齐,将 selectizeInput() 向右对齐。 我试过这个: shinyUI(flui
我正在构建一个应用程序,该应用程序使用带有 multiple = TRUE 的选择输入。我正在寻找一种方法,允许用户粘贴以逗号分隔的项目列表,而不必单独输入每个项目。看起来 selectize.js
我想包括 Font Awesome Shiny 项目中的图标 selectizeInput .我怎么办? 最佳答案 这是一个函数,selectInputWithIcons ,这就完成了。 librar
我有一个 list基于数据集中所有变量组合的模型表。取决于在 selectizeInput 中选择了哪些变量我想返回 Shiny 中关联的模型表. library(shiny) library(fle
Shiny 提供了一个包装 selectize.js 的 selectizeInput,它会生成一个文本输入/组合框小部件。我想延迟加载 selectizeInput 的选项/值有几个原因:可能有很长
我正在尝试更新 choices的 selectizeInput基于当前selected选择。这是我的尝试(导致循环): library(shiny) run_ui <- function() {
我希望我的 Shiny 选择输入: 没有标签 自定义背景颜色:#2f2d57 有占位符 让用户能够输入和选择 但是,我无法让应用同时遵循以上 4 条规则。我的代码如下: 数据: table .sele
我的 Shiny 应用程序中有一个 selectizeInput UI 对象,我希望能够复制并粘贴以逗号分隔的输入列表(即复制并粘贴到 selectizeInput)。 目前,我可以从其他地方复制以逗
我试图让下面的代码工作。但是 selectizeInput 小部件的默认值并不像我预期的那样为 NULL。在我允许多个输入之前,默认设置正在工作(作为 NULL)。但是这次我需要一个选择输入。有人有建
我希望能够从 Excel 复制文本行并将其粘贴到我们应用程序的文本字段中,如下所示: 突出显示所有单元格并复制到示例标签文本字段中: 我们想要的(Excel 中的每一行在文本字段中都有自己的条目) 当
示例: 以下 Shiny 的例子app.R文件包含 selectizeInput用户界面。可以使用 options = list(plugins= list('remove_button')) 删除选
我想在 Shiny 的应用程序中有一个 textInput,当用户键入某物时,它会向用户显示来自预定义列表(或向量)的可能自动完成。因此,用户可以单击它并节省时间,但也可以编写不在预定义列表中的文本(
我正在尝试将 selectizeInput 的多个值传递给 MySQL 查询。 问题是在 Shiny 的应用程序中这种操作的正确语法是什么? 我尝试过并且正在使用一个值 library(shiny
我有一个带有 selectizeInput 的 shiny 应用程序,这是一个例子: library(shiny) ui <- fluidPage( theme = "bootstrap.css"
我想在我的 selectizeInput 的选项中为组名称着色。下拉列表中的“水果”一词应始终为橙色,而“年份”应为绿色。 我试过网上找到的方法,但不太明白。附件是改编自 Selectize Inpu
我是一名优秀的程序员,十分优秀!