如何在JSTL函数/ EL中转义双引号?
我需要更改为使用JSTL替换函数才能在输入标记中使用字符串,例如:"
\"
<input type="hidden" name="text" size="40" value="${text}">
如果 具有 ,则 HTML 将被破坏。${text}
"
所以我试过了
<input type="hidden" name="text" size="40" value="${fn:replace(text, "\"", "\\\""}">
和
<input type="hidden" name="text" size="40" value="${fn:replace(text, '"', '\"'}">
但没有奏效。该页面会犯错误,例如
org.apache.el.parser.ParseException: 在第 1 行第 32 列遇到 “}” “} ””。本来以为是:“.”")" ..."[" ..."," ...">" ...“gt” ..."<" ...“lt” ...">=" ...“ge” ..."<=" ...“le” ..."==" ...“eq” ..."!=" ...“ne” ..."&&" ...“和”..."||" ...“或”..."*" ..."+" ..."-" ..."/" ...“div” ..."%" ...“模组” ...
我该怎么做?
更新
我错过了替换功能的紧密部分。右边的那个是这个有一个接近的paren:
<input type="hidden" name="text" size="40" value="${fn:replace(text, '"', '\"')}">
更新2
我发现在发布文本时,使用不是一个好主意,因为这个原因为什么不能在HTML输入标签中使用\”。代码应如下所示:\
<input type="hidden" name="text" size="40" value="${fn:replace(text, '"', '"')}">