如何在Shiny中默认选择verbatimTextOutput中的文本?

2024-05-27

这是与我之前的问题相关的问题(是否可以有固定宽度的 verbatimTextOutput 并让文本在 Shiny 中换行? https://stackoverflow.com/q/58516071/7669809)。我有以下闪亮的应用程序(https://yuchenw.shinyapps.io/Shiny_verbatimtext_fixed/ https://yuchenw.shinyapps.io/Shiny_verbatimtext_fixed/)与一个verbatimTextOutput可以显示长文本。是否可以默认选择这些文本?书签按钮的行为就是一个例子。如下图所示,当书签弹出窗口出现时,文本已经被选中。我想使用重现相同的行为verbatimTextOutput.

Code

library(shiny)

ui <- function(request){
  fluidPage(
    tags$style(type='text/css', '#txt_out {white-space: pre-wrap;}'),
    column(
      width = 6,
      textInput(inputId = "txt", label = "Type in some texts",
                value = paste0(rep(letters, 10), collapse = "")),
      strong("Show the texts"),
      verbatimTextOutput("txt_out"),
      br(),
      bookmarkButton()
    )
  )
}
server <- function(input, output, session){
  output$txt_out <- renderText({
    input$txt
  })
}
enableBookmarking("url")
shinyApp(ui, server)

感谢@ismirsehregal 的帮助。在这里我分享了这个问题的解决方法。这个答案使用textAreaInput在只读模式下,不verbatimTextOutput正如我最初要求的那样。不过,我对这次的结果和最终的外观感到满意textAreaInput.

我根据这篇文章学习了如何选择文本(https://stackoverflow.com/a/50745110/7669809 https://stackoverflow.com/a/50745110/7669809)。我还学习了如何设置只读模式textAreaInput从这篇文章(使用jquery使textarea只读 https://stackoverflow.com/q/3297923/7669809)。这是我的代码。

library(shiny)

ui <- function(request){
  fluidPage(
    column(
      width = 6,
      tags$head(
        tags$script("
      Shiny.addCustomMessageHandler('selectText', function(message) {
        $('#txt_out').select();
        $('#txt_out').prop('readonly', true);
      });
    ")
      ),
      textInput(inputId = "txt", label = "Type in some texts",
                value = paste0(rep(letters, 10), collapse = "")),
      textAreaInput("txt_out", label = "Show the texts", heigh = "300px"),
      br(),
      bookmarkButton()
    )
  )
}
server <- function(input, output, session){
  observeEvent(input$txt, {
    updateTextAreaInput(session = session, inputId = "txt_out", value = input$txt)
  })
  observeEvent(input$txt_out, {
    session$sendCustomMessage("selectText", "select")
  })
}
enableBookmarking("url")
shinyApp(ui, server)

这是应用程序运行时的外观。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在Shiny中默认选择verbatimTextOutput中的文本? 的相关文章

随机推荐

  • 仅使用 mod_rewrite 重定向主页

    我有一个需要重定向的网站 但我不能只重定向 目录 因为服务器上的文件夹中还有其他网站 这样做也会重定向它们 不好 因此 我的 htaccess 文件包含一堆针对各个 HTML 页面的 301 重定向 并且这些文件工作得很好 但我需要重定向主
  • 使用 Powershell 添加 IIS 8.5 自定义日志记录字段

    带有 IIS 8 5 的 Windows Server 2012 R2 允许使用增强型日志记录自定义日志字段 http www iis net learn get started whats new in iis 85 enhanced l
  • 获取Google云端硬盘文件下载URL

    继你好世界应用程序 https developers google com picker docs 并使用文件选择器 我可以获得谷歌驱动器文件信息 我想在我的网络应用程序中获取该文件 它是一个二进制文件 的下载网址 有什么办法可以用新的 j
  • 在ubuntu内核中启用cgroup cpu实时运行时

    我正在尝试在 Ubuntu 18 04 上运行的 docker 容器中使用实时调度 我已经按照给定的方法安装了实时内核here https stackoverflow com questions 51669724 install rt li
  • 将第一个数据证书导入 ColdFusion

    我尝试使用 keytool 将证书从 First Data 导入到我的 ColdFusion 9 设置中 如下所示 keytool importcert keystore MYCF9Dir runtime jre lib security
  • Angular 链接函数:$Scope 与 Scope

    在我在教程中看到的角度指令中 link function scope element attrs or link function scope element attrs 现在我知道 意味着角度服务 这在这里成立吗 scope 和scope
  • c++11 为什么这个移动构造函数不起作用?

    我已经编写了下面发布的代码 我希望能够在实例之间移动向量的内容LargeClass 正在使用移动构造函数 但我只得到副本而不是移动 为什么移动语义在这里没有按预期工作 Code include
  • Git 会删除空文件夹吗? [复制]

    这个问题在这里已经有答案了 我已提交一个项目并将其推送到我的 GitHub 帐户 该项目包含以下部分文件结构 server conf some files java lib java 和 lib 文件夹为空 从 GitHub 下载我的项目时
  • 在 C++ 中返回对象的最佳方法?

    我对 C 很菜鸟 返回对象的更好方法是什么 我来自脚本世界 其中对象始终是引用 并且正在尝试实现相同的概念 我的基础是C 中什么时候通过引用传递 什么时候通过指针传递 https stackoverflow com questions 36
  • Git Push 远程:致命:包超出允许的最大大小

    我接到了一个大项目 客户想将其添加到github 我是一点一点添加的 然后发生的事情是我太贪心了 一次添加了太多文件 现在 无论我尝试什么 我都会不断收到此错误 我怎样才能解决这个问题 我试图回滚 但也许我做错了 git push Ente
  • 为一个对象上的每个元组元素调用函数,无需递归

    我有一个类对象A可以用不同的类型调用 并在每次调用时返回更改后的 self 为了这个问题的目的A will do struct A A call const int A call const string s a 所以我有一个未知类型的元组
  • 可以让 ReSharper 在 Intellisense 中显示异常吗?

    我很喜欢 ReSharper 提供的重写智能感知行为 但是 我似乎无法让它显示异常 任何带有
  • ubuntu 的 CSS 更少(并且自动编译)? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我尝试过 simples 但现在 l
  • 在 C 中使用 lapack 计算矩阵的逆

    我希望能够计算一般的逆NxN使用 lapack 在 C C 中编写矩阵 我的理解是 在 lapack 中进行反转的方法是使用dgetri函数 但是 我无法弄清楚它的所有参数应该是什么 这是我的代码 void dgetri int N dou
  • createElement variable2

    我需要在 SharePoint 2010 中创建导航 Web 部件 我使用表格来显示 SharePoint 列表中的项目 该表格的结构如下 Column1 要显示的文本 标题 第 2 列 URL 标题链接 我似乎无法弄清楚如何实现创建 a
  • 我可以在 Orchard CMS 中使用我的 Ninject .NET 项目吗?

    我正在使用 Orchard CMS 创建一个网站 并且有一个用 Ninject 编写的外部 NET 项目 用于依赖注入 我想将其与 Orchard CMS 中的模块一起使用 我知道 Orchard 使用 Autofac 进行依赖注入 这给我
  • Nodejs 上使用 DNS 进行 Consul 服务发现

    TL DR 大家好 我试图从用 Express 编写的 NodeJS 前端调用 NodeJS 后端微服务 通过Consul https www consul io DNS接口 https www consul io intro gettin
  • 将 StringBuilder 写入 Stream

    将 StringBuilder 写入 System IO Stream 的最佳方法是什么 我目前正在做 StringBuilder message new StringBuilder All your base message Append
  • 如何在 X 秒后更改 NSTimer 的 NSTimeInterval?

    我正在 swift 2 中制作一个应用程序 其中有两个计时器 10 秒后我希望另一个计时器走得更快 我尝试过这样做 但它不起作用 我正在尝试更改 vartime to 1 IBOutlet var displayTimeLabel UILa
  • 如何在Shiny中默认选择verbatimTextOutput中的文本?

    这是与我之前的问题相关的问题 是否可以有固定宽度的 verbatimTextOutput 并让文本在 Shiny 中换行 https stackoverflow com q 58516071 7669809 我有以下闪亮的应用程序 http