我有一个带
的JSP<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
在head部分,使用以下代码我尝试将内容设置为UTF-8:
<%@page contentType="text/html;charset=utf-8" %>
response.setCharacterEncoding("UTF-8");
request.setCharacterEncoding("UTF-8");
在表单中是输入字段:
<input type="text" value="LastName*" class="input required" name="lastName" id="lastName" />
我现在遇到德国特殊字符的问题。
当我使用request.getParameter("lastName")
时,这在FireFox中运行良好,但在IE中则不行。
String encodedLastName = new String(request.getParameter("lastName").getBytes("iso-8859-1"), "UTF-8");
适用于IE,但不适用于Firefox。
我尝试将所有内容更改为iso-8859-1
,将accept-charset="UTF-8"
添加到表单中,...
现在它比工作更令人猜测。
这只能在服务器(Tomcat)中配置,但为什么浏览器的行为有差异?
谢谢Markus
答案 0 :(得分:0)
有两个问题相互干扰:
1)使用普通帖子时,我必须通过
进行正确编码<%@page contentType="text/html;charset=utf-8" %>
并通过
解码正确String encodedLastName = new String(request.getParameter("lastName").getBytes("iso-8859-1"), "UTF-8");
2)使用jquery时,添加
contentType: 'application/x-www-form-urlencoded; charset=UTF-8'
$ .ajax电话中的。