JQuery Ajax没有返回utf-8字符

时间:2012-08-01 15:44:59

标签: jquery

我有一个看起来像这样的ajax函数:

jQuery.ajax({
    type: 'POST',
    data: {
        action: 'get_data',
        article_id: some_var
    },
    url: 'http://www.example/test.php',
    success: function(msg) {
    jQuery('#some_div').html(msg);
    }
});

在test.php中我有mysql查询从base获取行,id等于article_id。它运作良好。但是我在数据库中有一些塞尔维亚语字符,当ajax返回那些字符时,它们看起来像这样:“Ž”是“ ”,“Š”是“?”。 数据被核心地存储在mysql(utf8连接,colations和所有其他stufs)中,html页面编码是utf8 ...我遗漏了一些东西,我不知道是什么......

3 个答案:

答案 0 :(得分:0)

尝试将数据类型添加到ajax查询中:

dataType: 'html'

答案 1 :(得分:0)

  1. 如果不存在,请在标记meta中的html中设置字符编码。
  2. 在服务器端使用mb_convert_encodingiconv功能。

答案 2 :(得分:0)

已解决,我在连接到base后添加:mysql_query(“SET NAMES utf8”); mysql_query(“SET CHARACTER SET utf8”); mysql_query(“SET COLLATION_CONNECTION ='utf8_general_ci'”); 。我认为只有在将数据插入基础

时才重要