Html 发布将由MathJax处理的文本
我在html表单中发布文本时遇到问题。 要发布到新页面以显示的文本(来自文本区域) 可能具有以下属性:Html 发布将由MathJax处理的文本,html,mathjax,Html,Mathjax,我在html表单中发布文本时遇到问题。 要发布到新页面以显示的文本(来自文本区域) 可能具有以下属性: 包括MathJax在两美元符号之间处理的latex代码 需要保留换行符 可能包括html代码,如输入标记 我尝试过以下方法: 将“\r\n”子字符串替换为html“br”标记,然后将文本发布到div或span的innerHTML中 保持换行。但是我需要事先删除文本中的html部分,否则, 如果文本包含一个“输入”标记,我将在结果页面中有一个输入框 此外,如果我删除html标记,那么我会意外地
- 将“\r\n”子字符串替换为html“br”标记,然后将文本发布到div或span的innerHTML中 保持换行。但是我需要事先删除文本中的html部分,否则, 如果文本包含一个“输入”标记,我将在结果页面中有一个输入框 此外,如果我删除html标记,那么我会意外地删除子字符串,如 ac,(如果“”相邻,似乎StackOverFlow也无法处理它!)
- 使用pre标记来保持换行符,那么MathJax就不起作用了李>
有人能帮我解决这个问题吗?提前谢谢!顺便说一下,我在我的项目中使用ruby on rails。您可以允许MathJax处理
标记,方法是将它们从配置的text2jax
块中的skipTags
数组中移除。更多细节请参见。最后,我使用了上文提到的skipTags,并将文本放入pre标记中。为了将HTML标记转换(并保留)为纯文本格式,我使用ruby提供的一个名为CGI.escapeHTML的方法。谢谢!但是,我将再次面临文本可能包含输入标记(或任何其他HTML标记)的问题,那么如何将标记显示为纯文本而不是输入框?对不起,我没有完全理解您的意图。对于不使用Ruby的用户,您可以执行text.replace(//&/g,“&;”).replace(//g,“”)
来转义存储在变量text
中的字符串内容。您的方法当然也可以完成此任务!