我使用shiny / R来显示表格。我想在表的每一行上放置一个按钮或链接来执行某些操作,传递行的ID或编号。我尝试了以下方法:
library( shiny )
tt <- read.table( text=" id blah img
1 1 adsf test1.png
2 2 ioiu test2.png
3 3 ioiuoiuer test3.png", stringsAsFactors= F )
runApp( list(
ui= basicPage( h3( textOutput( "blah" ) ), dataTableOutput( "view" ) ),
server= function( input, output ) {
output$blah <- renderText({ paste( "action: ", input$load_url1 ) } )
curdata <- reactive({
tmp <- tt ;
for( i in 1:nrow( tmp ) ) tmp$img[i] <- as.character( actionButton( paste0( "load_url", i ), "Load URL" ) )
tmp })
output$view <- renderDataTable({ curdata() })
} ) )
它不起作用。按钮会被渲染,但点击它们不会影响视图。
答案 0 :(得分:1)
尝试使用链接或常规按钮而不是操作按钮。如果动态创建图像parseQueryString可能是与链接结合使用的选项。您始终可以为表创建html并嵌入链接。但是,请看一下这个question的答案(即sanitize.text.function)。