【发布时间】:2018-12-11 05:09:24
【问题描述】:
我正在处理一个带有可点击元素的数据表。行的一列包含一个超链接。单击超链接时,我不希望触发或管理行单击事件(选择/取消选择)。
我对 R Shiny 的尝试:
function preventDefault(e) {
e.preventDefault();
e.stopPropagation();
return false;
}
DataTable 中包含链接的元素:
<a href="#" onclick="preventDefault(event)";>
但是什么也没发生。
完整源代码:
library(shiny)
library(DT)
library(dplyr)
ui <- fluidPage(
# Application title
DT::dataTableOutput("DTExample")
)
server <- function(input, output) {
dat <- head(iris)
dat <- dat %>% mutate(clickme = '<a href="#"
onclick="event.preventDefault(); event.stopPropagation(); alert(event); return false;";
>CLICKME</a>')
output$DTExample<- renderDataTable({
datatable(dat, escape = FALSE, class = 'cell-border stripe')
})
}
# Run the application
shinyApp(ui = ui, server = server)
【问题讨论】:
-
好建议。已附上示例代码。