使用shinyBS时,字符串中的单引号将sliderInput转换为数字输入

使用shinyBS时,字符串中的单引号将sliderInput转换为数字输入,r,shiny,tooltip,uislider,shinybs,R,Shiny,Tooltip,Uislider,Shinybs,我想用套装shinyBS和功能tipify向我的动作按钮或滑块添加工具提示。 我为工具提示的“title”参数添加了一个文本。但是,当我的文本有撇号(单引号)时,它会给出一个错误。 这不会发生在actionButton本身的标签上 library(shiny); library(shinyBS) shinyApp(ui = basicPage(p("title"), uiOutput("button_with_tooltip"), uiOutput("input_slider")),

我想用套装
shinyBS
和功能
tipify
向我的动作按钮或滑块添加工具提示。 我为工具提示的“title”参数添加了一个文本。但是,当我的文本有撇号(单引号)时,它会给出一个错误。 这不会发生在actionButton本身的标签上

library(shiny); library(shinyBS)
shinyApp(ui = basicPage(p("title"), uiOutput("button_with_tooltip"), uiOutput("input_slider")),
         server = function(input, output, session){
              output$button_with_tooltip = renderUI({
                   tipify(actionButton("button", label="I'm doing nothing"), title="I am doing nothing")})})
如果将工具提示标题从“我是”更改为“我是”,则不会显示

这个错误更令人惊讶的结果是,当工具提示的标题中有一个引号时,
inputSlider
,它们会自动转换为一个
NumericiInput
。。。奇怪的试试这个:

shinyApp(
     ui = basicPage(p("title"), uiOutput("input_slider")),
     server = function(input, output, session){
          output$input_slider = renderUI({
               tipify(sliderInput("slider", label="I'm a simple slider", min=0, max=10, value=5), title="I'm doing nothing")
          })})
为什么会发生这种情况?我如何覆盖这种情况?谢谢

注:我是法国人,所以我需要撇号


谢谢,

我们可以做一个转义
\\'

library(shiny)
library(shinyBS)
shinyApp(
  ui = basicPage(p("title"), uiOutput("input_slider")),
  server = function(input, output, session){
          output$input_slider = renderUI({
        tipify(sliderInput("slider", label="I'm a simple slider",
             min=0, max=10, value=5), title="I\\'m doing nothing")
})})
--输出


看起来这是GitHub最新版本中修复的错误:

  • (2015-04-28)
但最新的CRAN版本稍旧一些(2015-03-31)。我在GitHub上安装了最新版本,并毫无问题地运行了该应用程序

devtools::install_github("ebailey78/shinyBS@shinyBS3")
tipify
通过在页面上嵌入JavaScript添加工具提示。问题是JavaScript代码是用单引号字符串构造的,但是字符串内容没有被转义。这会导致JavaScript解析错误,这就是为什么滑块看起来像一个普通的
元素


您可以使用@akrun所示的反斜杠来转义撇号,或者使用
'

谢谢@akrun,它工作得很好!(实际上,文本必须直接在谷歌表单中修改,应用程序将检索所有文本)。你知道为什么这个滑块显示为数字或文本输入吗?这可能与文件编码有关吗?@agenis我不确定为什么它会变为数字输入重要:我使用的是shinyBS_0.61版本;最近的版本似乎解决了这个问题。