如何让表单提交以了解unicode字符?

时间:2009-06-03 09:04:34

标签: asp.net unicode

当我的ASP.NET应用程序的某些用户输入以下文本时

  

Jebénéficied'unun coaching

我在Request.Form中得到以下值:

  

Jeb n ficied un教练

首先我的页面编码设置为Latin1,我认为使用以下元标记将其更改为Unicode(UTF8)会有所帮助:

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

但是在改变之后我仍然在Request.Form中得到那些“块”。

现在奇怪的是,当我提交由IIS提供的页面时会发生这种情况(例如http://localhost/myform.aspx)。 如果我得到相同的html,在本地保存,直接在浏览器中打开文件(例如c:\ myform.html)并提交它,一切都很好,我看到我的Request.Form中的unicode字符应该是。

任何提示?我迷失在这里......

2 个答案:

答案 0 :(得分:2)

您提到的元标记可确保在UTF-8代码页之后呈现页面内容,但不会告知应如何处理发布的数据。 为此,您应该在表单标记中添加此属性:

<form accept-charset="utf-8" ....>

不知道为什么在通过IIS和文件系统运行时行为会有所不同。

答案 1 :(得分:-1)

您可以尝试“charset = ISO-8859-1”。我希望有帮助。

相关问题