0

我想在文本框中显示一些非英文字符。

我正在尝试

$("#txtSearch").val('<%:Html.Raw(ViewBag.my_search)%>')

它应该显示“2100 - København Ø”,但它显示的是“2100 - København Ã~”。

我的控制器从 cookie 中读取此值并将其分配到 ViewBag 中。在控制器中我有

ViewBag.my_search = cookie.Value 
// here it is assigning the right danish word but when it displays inside the input  box, it just displays wrong.

知道如何解决这个问题吗?

编辑:

好吧,它在我的本地电脑上运行良好,但是当我将它托管到某个远程托管服务提供商时,它的性能并不好。

4

1 回答 1

1

<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />这不是设置页面编码的好方法,因为它被真正的 http 标头覆盖。因此,如果远程托管服务提供商正在发送内容类型标头,它将被忽略。

您的数据是正确的 utf-8,这很好。您需要做的就是设置内容类型 http 标头,以便浏览器将其读取为 utf-8 而不是 windows-1252。

您可以设置您的个人页面以发送标题:

<%@ Page RequestEncoding="utf-8" ResponseEncoding="utf-8" %>

或者您可以在 Web.config 中全局设置它:

<configuration>
  <system.web>
    <globalization requestEncoding="utf-8" responseEncoding="utf-8" />
  </system.web>
</configuration>
于 2012-12-06T17:53:51.387 回答