javascript - `$(' #form ').serialize()` 弄乱 UTF-8 字符

标签 javascript encoding

我正在使用 AJAX 插入表单,并使用:$('#form').serialize() 获取所有输入并将其发送到 insert.php。

问题是像 á 这样的字符会变成 %A9 等。

在发送之前如何防止这种情况发生,或者当我通过 $_POST 检索它时如何获取正确的字符,以便我可以将它们正确插入到我的数据库中?

编辑-----

顺便说一句:没有 AJAX 的相同表单,只需将 action="POST"正确插入到相同的 insert.php 中,因此问题仅在于 serialize() 弄乱了 HTML。

最佳答案

Jquery serialize() 序列化为 UTF-8。所以á就变成了正确的UTF-8编码%c3%a1。尝试使用 $_REQUEST 因为它已经按照 php 文档进行了解码。 here

关于javascript - `$(' #form ').serialize()` 弄乱 UTF-8 字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8496540/

相关文章:

ubuntu - tr (ubuntu) 和 tr (mac) 之间的编码差异

python - 下载 youtube mp3 - 元数据编码问题(python、youtube-dl、ffmpeg)

java - jsp中的表单返回windows-1252中的文本

javascript - 无需滚动即可修复 HTML 表格标题

javascript - 制作我的第一个 listObjects from Amazon S3 -- Classic "' Access-Control-Allow-Origin'"遇到

javascript - 在 JavaScript 中找不到文件

Java direct ByteBuffer - 解码字符

javascript - 空的 iframe src 有效吗?

javascript - 当用户滚动时在 map 上绘制圆圈

Ruby 分解 UTF-8 字符