在jsp中逃脱'(滴答)

时间:2010-12-16 15:42:34

标签: java jsp

我有一个JSP,我使用c:out打印一些字符串。但我需要通过反斜杠逃避所有' (滴答声)。

示例:jsp

<span onclick=
    "document.getElementById('input').value+='<c:outvalue="${tag.title}" />'">
 <c:out value="${tag.title}" />
</span>

打印tag.title = test的

<span onclick="document.getElementById('input').value+='test's'">
 'test's
</span>

但我需要:

<span onclick="document.getElementById('input').value+='test\'s'">
 'test's
</span>

在jsp中有没有简单方法呢?

4 个答案:

答案 0 :(得分:1)

在你的getTitle()方法中,你可以返回yourString.replaceAll(“'”,“”);

编辑:

尝试

${fn:replace(yourString, "'", "")}

答案 1 :(得分:1)

您可以使用Commons Lang,导入StringEscapeUtils并使用其中一种方法(我认为在您的情况下会是escapeJavascript

答案 2 :(得分:0)

 ${fn:replace(text, "'", "")}

或添加一些jsp并使用string.replace()

答案 3 :(得分:-1)

这可能表明会建议进行一些重构。

专门停止通过jstl标签输出html,而是使用ifwhen;或者做一个更大的重构。

我可能会使用jQuery并根据类分配点击功能(可以从服务器端参数中获取)