Javascript 禁用“选择输入”

Javascript 禁用“选择输入”,javascript,r,shiny,Javascript,R,Shiny,我的闪亮应用程序还有一个问题。目标是在用户按下actionButton时禁用我的应用程序中的一些输入。我找到了解决方案,它对文本输入和数字输入都很好,但奇怪的是,对selectinput或selectizeinput不起作用。我知道这个解决方案包含一些使用javascript的内容,但我不知道如何使用 提前感谢您的帮助 编辑: 也许我说得不够清楚。对不起,伙计们!我将添加必要的代码块 这是链接中的禁用功能。它适用于操作按钮和数字输入,但不适用于选择或选择输入 disableActionButt

我的闪亮应用程序还有一个问题。目标是在用户按下actionButton时禁用我的应用程序中的一些输入。我找到了解决方案,它对文本输入和数字输入都很好,但奇怪的是,对selectinput或selectizeinput不起作用。我知道这个解决方案包含一些使用javascript的内容,但我不知道如何使用

提前感谢您的帮助

编辑:

也许我说得不够清楚。对不起,伙计们!我将添加必要的代码块

这是链接中的禁用功能。它适用于操作按钮和数字输入,但不适用于选择或选择输入

 disableActionButton <- function(id,session) {
  session$sendCustomMessage(type="jsCode",
                            list(code= paste("$('#",id,"').prop('disabled',true)"
                                             ,sep="")))
    disableselectButton <- function(id,session) {
  session$sendCustomMessage(type="jsCode",
                            list(code= paste("$('#",id,"').prop('select',false)"
                                             ,sep="")))

    disableselectButton <- function(id,session) {
  session$sendCustomMessage(type="jsCode",
                            list(code= paste("$('#",id,"').prop('hide',false)"
                                             ,sep="")))
那么,有没有其他方法来禁用select/selectize输入


再次感谢。:

解决方案:您可以使用我的软件包,只需调用
shinyjs::disable(id)
,它就会工作


解释为什么它不是超级简单:问题是,当您使用selectize时,它会创建另一个选择框,它只是一个漂亮的HTML,但不是真正的HTML输入元素,因此它不会像真正的HTML标记那样响应
disabled
属性。如果您查看selectize.JS文档,可以使用JS禁用selectize,但使用shiny不太方便:(


如果您不使用selectize(
selectInput(selectize=FALSE)
),禁用将很好。

我不知道为什么这个问题被否决,但也许您可以通过附加一些闪亮应用程序的工作流程截图来让问题更清楚。嘿,没有人能帮上忙吗?谢谢:)
selectInput("algorithmicMethod1",
                                label=h5("Berechnungsalgorithmus erster Wahl"),
                                c("RoT","Pickands"),
                                selected="RoT"),

                    conditionalPanel(condition="input.algorithmicMethod1 =='RoT'",

                                     selectInput("algorithmicMethod2",
                                                 label=h5("Berechnungsalgorithmus zweiter Wahl"),
                                                 "Pickands",
                                                 selected="Pickands")),

                    conditionalPanel(condition="input.algorithmicMethod1 =='Pickands'",

                                     selectInput("algorithmicMethod2",
                                                 label=h5("Berechnungsalgorithmus zweiter Wahl"),
                                                 "RoT",
                                                 selected="RoT"))