Javascript 更改另一个selectInput时更新selectInput
每当另一个具有不同输入id的Javascript 更改另一个selectInput时更新selectInput,javascript,r,shiny,Javascript,R,Shiny,每当另一个具有不同输入id的selectInput的值更改时,我需要使用其自己的输入id更改其中一个selectInput的值 在javascript中,这将是onchage,但我不知道如何将两者连接起来 jQuery或R代码是可以的 编辑:使其与此代码一起工作: observe({ choices <- input$product updateSelectInput(session, "productexperiance",
selectInput
的值更改时,我需要使用其自己的输入id更改其中一个selectInput
的值
在javascript中,这将是onchage
,但我不知道如何将两者连接起来
jQuery或R代码是可以的
编辑:使其与此代码一起工作:
observe({
choices <- input$product
updateSelectInput(session, "productexperiance",
choices=c("NA", paste(ProductList())), selected="NA")
})
观察({
选择使用JQuery(必须加载JQuery脚本才能使用)
你将不得不玩它一点…(未测试)
#表示元素的ID-实际ID可以是任何东西(除了select1或select2)
在我的示例中,当更改select1时,select2也将随之更改
val()中的“1”应对应于通过另一个列表可用的实际值。使用observe
和updateSelectInput
。假设一个selectInput称为col,另一个称为value:
observe({
choices <- values[input$col]
updateSelectInput(session, "value", choices=choices)
})
观察({
选择Joe,我不太明白;值不是函数或输入。另外,我不想将input1更改为=input2;我想让input2还原为NA。每当input1发生更改时,实际上,我使用观察者使其工作!但我仍然不明白它为什么工作?编辑:将代码移动到我自己的帖子对不起,不清楚,不是吗观察者的第一行只是代表您想要使用的任何逻辑来决定第二个selectInput的选择。值
只是一个包含一些数据的假设向量或列表。重要的是,您在观察者内部访问第一个selectInput的值;这将导致观察者每当该值更改时,将重新执行。
observe({
choices <- values[input$col]
updateSelectInput(session, "value", choices=choices)
})