PHP脚本返回TM符号ok,但是当从$ .post调用时,我看到黑色钻石

时间:2016-01-11 10:26:45

标签: php jquery

我有一个返回信息的PHP脚本 - 这是按预期工作的,我正确看到TM符号。这使用网址www.example.com/search/search_box.php?search_phrase=seattle

但是,当我打电话给AJAX页面时,我会看到TM应该是黑色钻石。

我的电话是:

$.post("/search/search_box.php", {search_phrase: "seattle"}, function(data) {
    var strResponse = data;
    $("#output_area").html(strResponse);
});

jQuery是从CDN链接的:

<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script>

search_box.php和调用页面都是UTF-8编码的(使用Notepad ++作为编辑器)。调用页面是一个没有任何包含或脚本的简单页面。

请提出建议吗?

2 个答案:

答案 0 :(得分:0)

如果我能看到好的,我可以,你正在使用GET来解析php方面的search_phrase,并且你在jquery上发帖,尝试使用$ .get https://api.jquery.com/jquery.get/

答案 1 :(得分:0)

用于编码的PHP文件集标题

header('Content-Type: text/html; charset=utf-8');

参考:Set HTTP header to UTF-8 using PHP

您尝试从PHP文件发送的结果也必须转换为UTF-8

$result= mb_convert_encoding($result, 'HTML-ENTITIES', "UTF-8");

参考:http://php.net/manual/en/function.mb-convert-encoding.php