R闪亮的数字输入步骤验证

时间:2018-05-13 02:14:01

标签: r validation shiny numeric-input

考虑以下代码,在无效输入时将数字输入窗口小部件的背景设置为红色:

library(shiny)

ui <- shinyUI(
    fluidPage(
        column(12,
               tags$style(HTML("input:invalid {background-color: #FFCCCC;}")),
               numericInput("test", h5("Test value:"), value = 6, min = 0, max = 10, step = 2, width = '200px')
        )
    )
)

server <- function(input, output) {
}

shinyApp(ui = ui, server = server)

如果用户输入“-1”,“11”或“4”,则代码按预期工作(前两个示例无效,对第三个示例有效)。

然而,观察输入奇数值时最小值和最大值之间的情况。代码认为输入无效。但请注意,数字输入的“步进”值是偶数,表明代码错误地认为正确的数字不仅必须介于0和10之间,还必须是2的倍数。

要证明这一点,请删除'step'选项,或将其更改为1,然后0到10之间的任何(整数值)输入都可以。

这是一个错误,是否有一个解决方法(也就是说,我可以保持'step'值,但仍允许min和max之间的任何和所有数字),或者我在这里遗漏了什么?

我的印象是'step'值只是控制箭头增加或减少输入的数量,而不是为了输入验证。

0 个答案:

没有答案