嵌套ac:out元素属性中的JSTL标记是一个好习惯还是使用c:out的var属性通常是首选的?它似乎工作在任何一种方式,但我怀疑嵌套它可能无法在某些应用程序服务器或JSP版本中工作(它只是看起来不对).
例如,一个输入元素,其值在验证失败时恢复,并具有特殊字符转义:
<input type="text" name="firstname" value="<c:out value="${param.firstname}"/>"/>
Run Code Online (Sandbox Code Playgroud)
与:
<c:out value="${param.firstname}" var="firstname"/>
<input type="text" name="firstname" value="${firstname}"/>
Run Code Online (Sandbox Code Playgroud)
Bal*_*usC 15
防止HTML元素属性中的XSS攻击而不会通过嵌套<c:out>标记干扰格式良好的XML语法的常见做法是使用fn:escapeXml()函数:
<input type="text" name="firstname" value="${fn:escapeXml(param.firstname)}"/>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10360 次 |
| 最近记录: |