3

每当另一个具有不同输入 id的值发生变化时,我需要selectInput使用其自己的输入 id更改 one 的值。selectInput

在 javascript 中,这将是onchage,但我无法弄清楚如何将两者连接起来。

jQueryR代码都可以。

编辑:让它与这个代码一起工作:

observe({ 
    choices <- input$product
    updateSelectInput(session, "productexperiance", 
                        choices=c("NA", paste(ProductList())), selected="NA")
  })

我仍然不明白为什么它会起作用。

4

2 回答 2

4

使用observeupdateSelectInput。假设一个 selectInput 称为 col,另一个称为 value:

observe({
    choices <- values[input$col]
    updateSelectInput(session, "value", choices=choices)
})

观察者的第一行只是代表您要使用的任何逻辑来决定第二行的选择selectInput。values 只是一个假设的向量或包含一些数据的列表。

重要的是您访问selectInput观察者内部的第一个值;这将导致观察者在该值更改时重新执行。

于 2013-09-26T01:41:55.217 回答
1

使用 JQuery(您必须加载 JQuery 脚本才能使用它)

$('#select1').change(function(){ 
    $('#select2').val('1');
});

你必须玩一下......(未经测试)

# 通过它的 ID 表示一个元素 - 实际 ID 可以是任何东西(除了 select1 或 select2)

在我的示例中,当 select1 更改时, select2 也将更改。

val() 中的“1”应对应于可通过其他列表获得的实际值。

于 2013-09-26T01:09:30.313 回答