我尝试通过 AJAX 获取一些数据,但收到空响应文本错误。
我的代码如下:
JS:
function getFounder(id) {
var founder = "";
$.ajax({
url: '/data/founder_info.php',
data: {founder: id},
dataType: 'json',
async: false,
type: 'post',
success: function(json) {
//founder = json.username;
console.log(json);
},
error: function(ts) {
console.log("Error: " + ts.responseText);
}
});
return founder;
}
PHP:
<?php
require_once '../core/init.php';
if($_POST['founder']) {
$u = new User();
$user_info = $u->find(escape($_POST['founder']));
$user_info = $u->data();
echo json_encode($user_info);
exit();
}
我找不到抛出错误的原因。
最佳答案
我使用一种将所有内容转换为 UTF-8 的方法修复了该问题。
function utf8ize($d) {
if (is_array($d))
foreach ($d as $k => $v)
$d[$k] = utf8ize($v);
else if(is_object($d))
foreach ($d as $k => $v)
$d->$k = utf8ize($v);
else
return utf8_encode($d);
return $d;
}
这是作为对 this question 的答复而发布的
我的问题现在已经解决了!
关于javascript - AJAX 返回错误且响应文本为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39203349/