[英]Add or delete rows of textInput
我正在尋找在 R Shiny 中添加/刪除textInput
行的方法。 所需的輸出類似於下圖:
圖片來源: https : //www.tutorialrepublic.com/snippets/preview.php?topic=bootstrap&file=table-with-add-and-delete-row-feature
所需的輸出不一定是表格。 或者,當用戶單擊“添加”時,應出現一個包含與前一行相同數量的空白textInput
條目的列表(用戶不能添加更多列)。 當用戶點擊“刪除”時,相應的行應該被刪除。 能夠從每個文本框中捕獲用戶輸入非常重要。 有沒有辦法使用 R Shiny 輕松完成此操作?
這個怎么樣:
library(shiny)
ui <- fluidPage(
sidebarLayout(
sidebarPanel(
sliderInput("input_no",
"Number of inputs:",
min = 1,
max = 5,
value = 30),
uiOutput("dateinputs")
),
mainPanel(
verbatimTextOutput("res")
)
)
)
server <- function(input, output) {
output$dateinputs <- renderUI({
no <- as.integer(input$input_no)
lapply(1:no, function(i) {
textInput(paste0("ind", i),
label = paste("Textinput ", i))
})
})
report_dates <- reactive({
no <- as.integer(input$input_no)
sapply(1:no, function(i) {
input[[paste0("ind", i)]]
})
})
output$res <- renderPrint({
report_dates()
})
}
shinyApp(ui = ui, server = server)
另一種選擇是使用DT的編輯功能:
看看這個例子: https : //rstudio.github.io/DT/shiny.html (第 2.4 節)。 您可以創建一個 actionButton() 來添加行並在表中編輯它們
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.