Я пытаюсь создать динамическую c условную панель. Итак, мои условия следующие:
Ввод в пользовательском интерфейсе:
selectInput('inpt','Input Number', seq(1,50,1), selectize = FALSE)
Мой ввод пользовательского интерфейса условной панели:
conditionalPanel(
"input.inpt == 2",
box(
selectInput("id1", "Select number",
seq(1, 24, 1), selected = 1),
selectInput("id2", "Select number",
seq(1, 24, 1), selected = 1),
width = 2,
status = "primary"
)
),
conditionalPanel(
"input.inpt == 3",
box(
selectInput("id1", "Select number",
seq(1, 24, 1), selected = 1),
selectInput("id2", "Select number",
seq(1, 24, 1), selected = 1),
selectInput("id3", "Select number",
seq(1, 24, 1), selected = 1),
width = 2,
status = "primary"
)
Так что этот код работает отлично! Но проблема в том, что он жестко запрограммирован.
Как вы можете проверить selectInput , у меня всего 50 входов.
У меня точно такое же количество новых панелей selectInput в зависимости от входа.
Пример: если выбрано 3, у меня будет 3 selectInput с id1, id2, id3 (как показано в коде выше). Если выбрано 18, у меня будет 18 selectInput с id1, id2, ..., id18. Если выбрано «n», у меня будет «n» selectInput с id1, id2, ... idn.
Я не хочу писать этот код так много раз.
PS : Все изменения вносятся только в поле (). Я не хочу создавать несколько ящиков.
Так как же это обобщить? Если у меня есть 'n' количество входов, как повторить этот подход?