0

有没有办法在由创建的警报中使用 MathJax shinyBS?下面的尝试没有按预期工作。

library(shiny)
library(shinyBS)
shinyApp(
  ui =
    fluidPage(
      sidebarLayout(
        sidebarPanel(textInput("num1", NULL, value = 100),
                     "divided by", textInput("num2", NULL, value = 20),
                     "equals", textOutput("exampleOutput")),
        mainPanel(
          withMathJax(bsAlert("alert"))
        )
      )
    ),
  server =
    function(input, output, session) {
      output$exampleOutput <- renderText({
        num1 <- as.numeric(input$num1)
        num2 <- as.numeric(input$num2)

        if(num2 == 0) {
          createAlert(session, "alert", "exampleAlert", title = "Oops",
                      content = HTML("You cannot divide by <span class='math inline'>\\(0\\)</span>."))
        } else {
          closeAlert(session, "exampleAlert")
          return(num1/num2)
        }

      })
    }
)
4

1 回答 1

0

这适用withMathJax(bsAlert("alert"))于 OP

content = "You cannot divide by <span class='math inline'>\\(0\\)</span>.<script>if (window.MathJax) MathJax.Hub.Queue(['Typeset', MathJax.Hub]);</script>"

奇怪,因为脚本被包含了两次。

于 2017-05-05T17:31:45.217 回答