Исключение строки javascript в java

Мне нужно сделать это в строку в Java:

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

Может кто-нибудь помочь? Я продолжаю пытаться, и это заканчивается так...

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

Что не работает, потому что мне нужно дважды экранировать кавычки до и после UpArrow.png. так как это должно быть экранировано в javascript, а не в java.

,

,

Обновление 2019 года: Если вы смотрите на это, то Бог поможет вашей душе. Это ужасный код, и если вы пытаетесь делать что-то таким образом, вы делаете это неправильно (как мне предлагали другие).

Правильный способ сделать это - jquery или одна из zillion-модификаций DOM-фреймворков, которые существуют в настоящее время, и выталкивать вещи в/из области DOM.

Если вы делаете это, вы не должны смотреть на приведенный выше код или нижеприведенные решения, а вместо этого изучать больше, так как это путь к созданию спагетти-кода.

Ответ 1

У общих Apache есть методы как раз для этого в StringEscapeUtils: метод escapeJavaScript.

Ответ 3

Кажется, он снова перемещен, теперь он является частью "commons-text" и называется:

StringEscapeUtils.escapeEcmaScript

Но хорошо это все еще существует.