使用jquery corrupts发布和返回数据åäö

Nic*_*oft 6 html javascript php jquery encoding

这是一个网上有很多信息的问题.不过,我还没有解决它.

我在网页上有一个动态加载的表单.我使用jquery $ .post提交它.我的页面适用于瑞典人,因此需要与åäö合作.

将数据发布到服务器时,它会将数据加载回新表.退回的åäö已损坏.示例åååäääööö=åååäääÃÃÃÃ

服务器端是php.我将所有返回内容的页面编码到浏览器中,如下所示:

<?php header('Content-type: text/html; charset=ISO-8859-1'); ?>
Run Code Online (Sandbox Code Playgroud)

我在服务器端尝试过utf8_encode和utf8_decode.实际上没有区别.

我试过这个:encodeURIComponent($(this).serialize())其中$(this)是要提交的表单.当然,这不起作用,我不知道如何编码像$(this)这样的对象.

我认为这是许多人所做的事情,但它似乎不是一个标准的解决方案.

因此,我需要帮助的是如何使用javascript/jquery/etc发布表单.并在服务器端处理它,返回它,并且它们看起来应该如此.如果服务器收到utf8,那就完全没问题了.原则应该只使用UTF8然后问题解决了吗?似乎应该有另一种解决方案.

Dio*_*ane 4

AJAX 使用 UTF-8 编码。如果您的数据不是 UTF-8 格式(例如 Windows 1251 或 ISO-8859-1),您将会遇到麻烦。

在标头中指定不同的编码方案不会将数据转换为 UTF-8。它只是告诉客户期望什么。

我的座右铭:UTF-8 端到端,否则就死!