关于Struts2 标签<s:property>中文乱码问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于Struts2 标签<s:property>中文乱码问题相关的知识,希望对你有一定的参考价值。
这是个list集合,输入里面的一个字段是keyword,然后用s:generator标签以逗号分割 然后拼凑成a标签。因为关键字keyword可能是 中文。但是在页面上显示就为乱码,请问如何解决。从数据库中查出的关键字并为进行任何处理。目前查看页面源代码是这样的,url链接显示还是中文,再点链接时,在IE浏览器下乱码
我参考了一下其它的网站,在查看源代码的时候这些中文自动转换成%25E6%25AC%25A7%25E7%25BE%258E%25E6%25B5%2581%25E8%25A1%258C类型的,请问应该怎么解决
<s:iterator value="newestList" id="article">
<ul class="keywords">
<s:generator separator="," val="#article.keyword" var="key">
<s:iterator value="#key"><li><a href='search.do?keyword=<s:property>' title="<s:property/>" target="_blank"><s:property/></a> </li></s:iterator>
</s:generator>
</ul>
</s:iterator>
当调用另一个jsp页面时 tomcat或者你用的是别的服务器 默认是按照GBK读取 mytemplate.jsp页面的
设置tomcat的安装路径中的bin目录下server.xml默认编码
<Connector port="8081" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8" />
可以解决问题
关于struts2标签的 <s:if test="表达式">中,表达式问题
jsp中,在$(document).ready(function()后第一句定义了一个var flag=true; 在后面的显示部分 这个判断总是不对 是取值方式不对 还是页面定义的变量在struts2标签里不能取?
jsp中,在$(document).ready(function()后第一句定义了一个var flag=true; script结束后,到显示部分,通过<s:if test="flag==true">来完成某项判断,但是这个判断总是不对,flag的值不能成功读出, 是取值方式不对 还是页面定义的变量在struts2标签里不能取?
var flag = true;你是定义了一个js变量,跟struts2没关系的。
set标签是给struts2的上下文环境中增加一个临时变量flag,值是true
判断也改下
<s:if test=\'flag=="true"\'>因为true是一个字串必须带引号。 参考技术A js中定义的变量只能在js块里面用,出了那个函数就不能用了!
以上是关于关于Struts2 标签<s:property>中文乱码问题的主要内容,如果未能解决你的问题,请参考以下文章
关于struts2标签的 <s:if test="表达式">中,表达式问题