在表单提交期间发送特殊/区域特定字符

时间:2013-01-23 13:20:20

标签: java html jsp encoding struts

我有一个表单,它将被提交给Struts Action并将被处理并返回输出。

但是输入数据有像“Louvière”这样的特殊字符,如果用户提交表单,在后端,Struts将此值设为“LaLouvi re”。

我如何处理这种情况,因为输入应该特别接受欧元字符。

在jsp页面标题中我编码为

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

和形式定义为

<s:form id="myform" action="myAction" method="POST">

1 个答案:

答案 0 :(得分:2)

默认情况下,编码等于包含<form>元素的文档的编码。因此,要么更改包含<form>的文档的charset指令,要么

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

或者将accept-charset属性添加到表单元素中,如下所示:

<s:form id="myform" action="myAction" method="POST" accept-charset="utf-8">

然后,浏览器应在提交POST请求时使用声明的charset。

旁注,欧元符号(€)不是iso-8859-1的一部分,而是iso-8859-15的一部分。