我做了一个ajax调用来解析一个JSON对象。该对象由ajax完美调用。但问题是,当我返回对象时,它会向我的JSON对象添加4个属性readyState,responseText,status和statusText。
我想要的IJSON对象是
{"sysload":{"label":"System Load","data":[[0,2546],[1,10307],[2,16064],[3,26617],[4,21310],[5,1439],[6,1772],[7,2741],[8,25930],[9,23739]]}}
我得到了什么
{"readyState":4,"responseText":"{\"sysload\":{\"label\":\"System Load\",\"data\":[[0,15218],[1,15299],[2,3136],[3,26489],[4,7358],[5,20767],[6,11372],[7,565],[8,18122],[9,24635]]}}\t","status":200,"statusText":"OK"}
如何删除那些奇怪的4属性和反斜杠。这是我的PHP代码 -
<?php
function get_server_load()
{
$load=rand();
return $load;
}
$data = array();
$data['sysload'] = array();
$data['sysload']['label'] = "System Load";
for ($i=0; $i < 10; $i++) {
$data['sysload']['data'][] = array($i, get_server_load());
}
echo json_encode($data);
?>
这是我的javascript代码:
function getRealtime() {
return $.ajax({
type: 'GET',
url: 'cpuload.php',
data: {
'get_server_load': 1
},
dataType: 'json',
async: false,
success: function(data) {
dataxxx = data;
}
});
return dataxxx;
}
返回数据包含那些额外的属性,但在ajax成功回调中它绝对是好的。我的代码出了什么问题?
答案 0 :(得分:2)
我执行了这个:
function getRealtime() {
var dataxxx;
$.ajax({
type: 'GET',
url: 'cpuload.php',
data: {
'get_server_load': 1
},
dataType: 'json',
async: false,
success: function(data) {
dataxxx = data;
}
});
return dataxxx;
}
console.log(getRealtime());
返回{"sysload":{"label":"System Load","data":[[0,16333],[1,29610],[2,32616],[3,15902],[4,5212],[5,29171],[6,12775],[7,15058],[8,3307],[9,14984]]}}