首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >允许numericInput()在闪亮的交互式web应用程序中接受逗号输入(供欧洲用户使用)

允许numericInput()在闪亮的交互式web应用程序中接受逗号输入(供欧洲用户使用)
EN

Stack Overflow用户
提问于 2018-06-20 23:10:34
回答 1查看 573关注 0票数 2

在一个闪亮的交互式web应用程序(指向源这里的链接)中,我们使用numericInput()让用户输入所使用的值(请参阅ui.R,或者,下面是一个片段):

代码语言:javascript
运行
复制
  sidebarLayout(
      sidebarPanel(
          numericInput("unstd_beta", "Estimated Effect", 2),
          numericInput("std_error", "Standard Error", .4),
          numericInput("n_obs", "Number of Observations", 100),
          numericInput("n_covariates", "Number of Covariates", 3),
          actionButton("button", "Run"),
          width = 2
      ),

这基本上很好,直到来自欧洲(德国)的用户尝试使用逗号(,)而不是十进制(.)输入值。输入值,即:

代码语言:javascript
运行
复制
7,06

而不是

代码语言:javascript
运行
复制
7.06

这不起作用,因为numericInput()不允许逗号。有没有任何(简单的)方式允许来自欧洲的用户输入这样的值(7,06)?

如果不是,我们可以想象工作圈(也就是说,允许输入是任何类型的(即字符串),然后依次处理字符串;但这对我们来说并不是那么可取。

EN

回答 1

Stack Overflow用户

发布于 2018-06-21 09:14:40

试着用textInput()代替,用gsub()代替逗号:

代码语言:javascript
运行
复制
library(shiny)

if (interactive()) {

  ui <- fluidPage(
    textInput("number", "Number", "0,4"),
    verbatimTextOutput("value")
  )
  server <- function(input, output) {
    output$value <- renderText({ as.numeric(paste(gsub(",", ".", input$number))) })
  }
  shinyApp(ui, server)
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50958272

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档