日期:2014-05-16  浏览次数:20454 次

jsp中不让&显示为&的方式

?????? 今天在网页中从服务其中获取的属性值包含大量的&字符,但是到浏览器的页面中显示的时候变成了&,我在网页上获取数据的方式是

<input type="hidden" name="last_page_url" value='<bean:write property="last_page_url"/>'>,

所以显示的结果是&变成了&amp;原因是html语言中&是一个特殊字符,在html标签内部使用特殊字符的时候,特殊字先转义,然后html语言才能把它当做普通的字符使用,刚才的&符号,被html转义为&amp;

???????为什么html会转义这些字符?详细原因是http://114.xixik.com/character/(转载)。

?????? 为了让&符号原样的显示,需要<bean:write的过滤属性filter,把它设置成false就可以了。我的代码是:

<input type="hidden" name="last_page_url" value='<bean:write property="last_page_url" filter="false"/>'>,如果把filter="false"放在value前面得到的结果是&转换为&amp;所以想得到&的原样显示那么把filter="false" 放在value后面。