2015-10-15 49 views
1

我安装了Mamp以在本地网站上工作。 但是发生了一些奇怪的事情。 我有JSON(Firebug控制台显示它),但是控制台日志显示“未定义”正常返回在Mamp系统上的ajax请求后无法显示json结果

所以萤火显示我的ajax请求和JSON回报(!):

POST http://local/test.php 200 OK 7ms 
{"testjson":"ok"} 

但是控制台日志显示:undefined 一个想法?

我选中了并且在Mamp上启用了json 1.2。

的test.html:

<script type='text/javascript'> 
$(document).ready(function(){ 
$.ajax({            
     type: "POST", 
     url: "mod/test.php", 
     data: "action=display", 
     success: function(response) 
     { 
       console.log(response['testjson']); 
     } 
    }); 
}); 

</script> 

test.php的:

if($_POST['action']=="display") 
{ 
    $response['testjson'] = "ok"; 
    header('Content-type: application/json'); 
    echo json_encode($reponse); 
    exit; 
} 
+0

什么是JSON 1.2? –

+0

版本的json支持我的php配置Mam​​p – Bisvan

+0

好的,我的答案是否适合你? –

回答

1

请删除下面的线,并尝试:

header('Content-type: application/json'); 

或者试试以下这些变体之一:

$.ajax({            
    type: "POST", 
    url: "mod/test.php", 
    data: "action=display", 
    success: function(response) { 
    console.log(response.testjson); 
    } 
}); 
$.ajax({            
    type: "POST", 
    url: "mod/test.php", 
    data: "action=display", 
    success: function(response) { 
    response = JSON.parse(response); 
    console.log(response['testjson']); 
    } 
}); 
$.ajax({            
    type: "POST", 
    url: "mod/test.php", 
    data: "action=display", 
    success: function(response) { 
    response = JSON.parse(response); 
    console.log(response.testjson); 
    } 
}); 
+0

我不明白你的第一行:“请删除下面的行”......哪一行? – Bisvan

+0

@ user3031054删除此行:'header('Content-type:application/json');' –

+0

@ user3031054它工作吗? –