jQuery代码没有正确传递特殊字符

时间:2011-06-24 06:32:26

标签: php javascript jquery ajax jeditable

我有一个使用jQuery jEditable插件的网站(通过AJAX进行内联编辑)。事实是,如果你输入像“Entrées”这样的东西(这是为了编辑餐馆菜单,所以应该预期这样的输入),获得该值的AJAX PHP脚本会收到“Entrées”。如何确保正确发送的值?

更奇怪的是,数据库值存储为“Entrées”,但是当在网页上显示时,它会正确显示“Entrées”。

3 个答案:

答案 0 :(得分:1)

不仅要确保输入文本的表单,还要确保显示的页面使用UTF8编码。如果您“测试”以查看收到的内容是一个简单的echo ...; exit;,则此页面可能不会呈现为UTF8。

答案 1 :(得分:0)

在发送之前,必须在字符串上使用javascript encodeURI()函数。

答案 2 :(得分:0)

我想我可能已经解决了这个问题。使用escape()而不是encodeURI()正常工作。有人知道为什么会这样吗?

返回

escape():Entr%E9es

encodeURI()返回:Entr%C3%A9es

很奇怪。