2015-05-29 111 views
1

我想將輸入字段從複選框切換到單選按鈕,具體取決於所選的圖表類型。在任何一種情況下,輸入變量都是相等的,但有些圖形允許多個輸入,有些則不允許。 UI的工作方式與預期相似,但單選按鈕不會影響發送到server.R的輸入變量,而即使選擇了需要單選按鈕輸入的圖形類型,複選框仍然保持有效。我錯過了什麼?閃亮:通過條件面板的輸入選擇被忽略

conditionalPanel(
      condition = "input.graphtype != 'Graph Type 2'", 
      checkboxGroupInput("variable", "Select variables:", 
          c("variable1","variable2","variable3") 
          ) 
     ), 
conditionalPanel(
      condition = "input.graphtype == 'Graph Type 2'", 
      radioButtons("variable", "Select variable:", 
         c("variable1","variable2","variable3") 
         ) 
     ) 

回答

1

你的問題是單選按鈕和複選框都使用相同的ID。他們兩人都使用編號variable。你不能那樣做。在HTML中,每個元素都必須具有唯一的ID。由於您首先定義了複選框,因此他們可以保存ID並且可以訪問,但單選按鈕無法訪問,因爲他們的ID已被佔用。我認爲如果你切換兩個條件的位置,那麼單選按鈕將工作,而不是複選框,如果是這種情況,那麼這將證明我是正確的。

無論如何,即使這不是唯一的問題(但我很確定它),這絕對是一個需要解決的問題。這兩個輸入必須有不同的ID。

+0

謝謝澄清。我將此作爲解決方法,因此確認第一個選項真的不起作用是很好的。 – AlexT