通过AJAX获取BD数据并在重音的数组原因中获取null

时间:2012-05-05 12:05:10

标签: javascript jquery ajax post

您正在使用ajax获取bd:

的数据数组
$.post
(
"lib/php/load_food.php",
{f:Base64.encode("primeros")},
function(data)
{
firsts = data;
},
"json"
);

但是在数组第一中,带有acent字符的字符串显示为“null”。

我正在寻找信息或帮助,但没有找到任何关于该做什么的线索。

由于

1 个答案:

答案 0 :(得分:0)

尝试使用PHP rawurlencode()对PHP文件中的数据进行编码,并使用unescape()和JQUERY .text()进行解码并正常显示:

简单示例:


PHP文件:

<?php

$arr = array(
  "title" => rawurlencode("thís ís grêãt!")
);

echo $arr;

?>

<强> JQUERY:

<script type="text/javascript">

$.ajax({
  type    : "POST",
  url     : "path_to_my_file.php",
  data    : "&action=example",
  success : function(response) {
    // Parse PHP Array to Javascript Array
    var arr = $.parseJSON(response);

    // Populate the Title
    $("#my_element_id").html(unescape(arr['title'])).text();
  }
});

</script>

<强>结果: 这是grêãt!