在java中转义javascript字符串

A_E*_*ric 14 javascript java jsp escaping html-escape-characters

我需要将它变成java中的字符串:

 <script type="text/javascript">document.write("<img src=\"UpArrow.png\" /> \"); </script>
Run Code Online (Sandbox Code Playgroud)

有人可以帮忙吗?我一直在努力,结果就像这样......

return "<script type=\"text/javascript\">document.write(\"<img src=\"UpArrow.png\" /> \"); </script>";
Run Code Online (Sandbox Code Playgroud)

哪个不起作用,因为我需要在UpArrow.png之前和之后双重转义引号.因为它需要在javascript中转义而不是在java中转义.

Den*_*ret 19

Apache commons在StringEscapeUtils中有一个方法:escapeJavaScript方法.

  • org.apache.commons.lang3.StringEscapeUtils 没有这个功能......有什么想法吗? (2认同)

Kir*_*sen 8

看起来它在 Apache Commons Lang 3 中被移动到 StringEscapeUtils 中的 ESCAPE_ECMASCRIPT。

https://commons.apache.org/proper/commons-lang/javadocs/api-3.4/src-html/org/apache/commons/lang3/StringEscapeUtils.html#line.74


Tin*_*ate 7

似乎它又移动了,现在它是“commons-text”的一部分并命名为:

StringEscapeUtils.escapeEcmaScript
Run Code Online (Sandbox Code Playgroud)

但好在它仍然存在。

  • 为什么他们一直在移动,我必须不断重构 (3认同)