寻找组合 selectize 和 textInput 的快捷方式

2024-04-17

我正在尝试为数据库构建一个有点复杂的 CRUD 接口(创建、读取、更新和删除)(可能闪亮不是最好的工具,但我想尝试一下,因为我不熟悉 js)。我已经找到了一些很好的例子,特别是来自Barbara https://github.com/bborgesr/wsds2017。现在我正在寻找一种组合的快捷方式selectizeInput and a textInput(也许作为 selectize 的一个选项?!),因为否则如果我必须像下面的示例所示那样做,我的代码就会变得很长。这个例子将展示我想要得到什么。 (This https://stackoverflow.com/questions/36768785/shiny-update-input-text-for-select-input不是我要找的。)

这是一个非常简短的可重现示例:

library(shiny)
startData <- c("Berlin", "London", "Paris")

ui <- fluidPage(
  selectizeInput("town", "Town", choices = c(startData, "new town")),
  uiOutput("newTown")
)

server <- function(input, output, session) {

  rV <- reactiveValues(towns = startData)

   output$newTown <- renderUI({
     if (input$town == "new town") {
       tagList(
         textInput("text", "New Town"),
         actionButton("entry", "save town")
       )
     }
   })
   # update selectizeInput when actionButton is clicked
   observeEvent(input$entry, {
     rV$towns <- c(rV$towns, input$text)
     updateSelectizeInput(
       session, "town", "Town",
       choices = c(rV$towns, "new town"),
       selected = input$text
     )
   })
}

# Run the application
shinyApp(ui = ui, server = server)

对于一个更复杂的示例,我尝试实现一个简单的数据表来编辑,您可以在我的github https://github.com/frumentum/combineInputs帐户。希望有一个更短的方法这样做......


Well, a 选择输入已经是以下组合textInput and selectInput。因此,所需的功能已包含在 selectize 包中。您可以将选项参数传递给selectizeInput,它将直接翻译为 JavaScript 包。See here https://github.com/selectize/selectize.js/blob/master/docs/usage.md获取选项列表。

其中之一是create选项,指定是否以及何时可以通过键入与任何给定选项都不匹配的内容来创建选项。

可以省略以下示例中的整个服务器代码来显示这一点,但我在那里留下了一些评估,以阐明如何实际扩大框架创建后的选择集。

library(shiny)
startData <- c("Berlin", "London", "Paris")

ui <- fluidPage(
  selectizeInput("town", "Town", choices = startData, options=list(create=TRUE))
)

server <- function(input, output, session) {

  rV <- reactiveValues(towns = startData)

  observeEvent(input$town, {
    # nchar check, because emptying the text field results in "" choice.
    if (nchar(input$town) && !(input$town %in% rV$towns)) {
      rV$towns <- c(rV$towns, input$town)
    }

    print(rV$towns)
  })
}

shinyApp(ui = ui, server = server)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

寻找组合 selectize 和 textInput 的快捷方式 的相关文章

随机推荐

  • 将事件处理程序应用于动态控制

    我有一个用户窗体 可以动态放置commandButton到用户表单上 但我似乎无法正确设置动态事件处理程序 下面显示了我如何设置动态按钮的代码 Set cButton Me Controls Add Forms CommandButton
  • 使 fetch 调用真正同步

    是的 我想完全同步 我知道它会完全停止我唯一的线程 但我真的需要它 因为我使用一些我不想更改的 SDK 并且在这个 SDK 中 您需要传递一个将被调用且会更改的函数那里有一些价值 比如 function onNonce stuff cons
  • 如何使用 Sql Server 2008 删除表中的前 1000 行?

    我在 SQL Server 中有一个表 我想从中删除前 1000 行 但是 我尝试了此操作 但我不是只删除前 1000 行 而是删除了表中的所有行 这是代码 delete from mytab select top 1000 a1 a2 a
  • 如何在AWS EC2服务器中编写cron作业

    我在 AWS EC2 中创建了一个 cron 作业 但它不起作用 我按照以下步骤创建 crontab 第1步 我登录到AWS EC2实例 step 2 crontab e 第三步 插入模式 第4步 我输入了 php var www html
  • 处理多种表单和打印内容[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 您好 我对
  • 从 JBPM WorkItemHandler 抛出异常?

    我对从 JBPM 工作项处理程序抛出异常以及在业务流程中的其他地方处理异常的主题有点困惑 我们使用 JBPM 6 0 3 在 Jboss EAP 6 1 中运行 The JBPM 用户指南 http docs jboss org jbpm
  • ExtJS TreeGrid 中的复选框列

    有没有办法在新的 extjs 小部件 TreeGrid 中包含复选框列 将节点属性标记为 false true 并不像 TreePanel 那样有效 Cheers 我修改了 Ext ux tree TreeGridNodeUI 类来实现此功
  • 正则表达式捕获 VBA 注释

    我正在尝试捕获 VBA 注释 到目前为止我有以下内容 Z 它捕获以单引号开头但在字符串末尾之前不包含任何双引号的任何内容 即它不会匹配双引号字符串中的单引号 dim s as string a string variable works s
  • 未知层:当我尝试加载模型时 KerasLayer

    当我尝试将模型另存为 hdf5 时 path path h5 model save path 然后再次加载模型 my reloaded model tf keras models load model path 我收到以下错误 ValueE
  • 运行为黑莓设备创建的黑莓应用程序需要哪些步骤?

    我使用 java me 和 BlackBerry 特定 API 创建了一个 BlackBerry 应用程序 它在黑莓模拟器上运行良好 我想知道如何将此应用程序部署到 BlackBerry 设备 从文档中我发现 在设备上运行 BlackBer
  • XSLTProcessor::importStylesheet() 中的多个 PHP 警告

    Errors Warning XSLTProcessor importStylesheet xsltprocessor importstylesheet Undefined variable in transform php on line
  • 在 Cloud Dataflow 中进行 ETL 和解析 CSV 文件

    我是云数据流和 Java 的新手 所以我希望这是正确的问题 我有一个 csv 文件 其中有 n 个列和行 可以是字符串 整数或时间戳 我需要为每一列创建一个新的 PCollection 吗 我在示例中找到的大多数文档都类似于 PCollec
  • 如何在 Rails 6 或 Rails 7 alpha 引擎中使用 jqueryUI

    如果有人能够展示在 Rails 6 或 Rails 7 Alpha 2 引擎中使用 jquery ui 所需的确切步骤 我将不胜感激 我无法让 importmap rails 在 Rails 7 引擎中工作 也无法让 webpacker 在
  • 非静态字段、方法或属性需要对象引用

    这是我第一次使用列表 但我似乎做得不太好 我有一个客户类 其中包含客户列表作为客户类中的属性 可以这样做吗 public class Customer private List
  • Pandas:重新采样数据帧列,获取与最大值对应的离散特征

    样本数据 import pandas as pd import numpy as np import datetime data value 1 2 4 3 names joe bob joe bob start end datetime
  • 获取包中的所有子包

    PowerSet
  • 无法使用 Ruby 和 net/ssh 密钥进行连接

    我在使用 net ssh gem 通过 ssh 从 ruby 进行连接时遇到问题 得到 Net SSH AuthenticationFailed 代码如下 require net ssh keys path to private key N
  • 角度表单验证:比较不同表单组中的两个字段

    如果它与某人的问题重复 我很抱歉 我没有找到解决我的问题的方法 任何人都可以解释或举例说明如何比较一种表单中不同表单组中的两个字段吗 这是代码片段 可查看我的表单和验证器的外观 private createForm const testGr
  • 如何设计插件系统才能不浪费这么多资源?

    我正在尝试建立一个基本的插件系统 https stackoverflow com a 3356922 99923就像您在 WordPress 等 CMS 中常见的那种 您有一个插件文件夹 它们通过使用事件通知的方式与主系统的操作相关联Obs
  • 寻找组合 selectize 和 textInput 的快捷方式

    我正在尝试为数据库构建一个有点复杂的 CRUD 接口 创建 读取 更新和删除 可能闪亮不是最好的工具 但我想尝试一下 因为我不熟悉 js 我已经找到了一些很好的例子 特别是来自Barbara https github com bborges