jquery中的ajax()方法返回null

时间:2011-07-14 11:20:11

标签: php jquery ajax null

我正在尝试进行一个非常简单的查询:

$.ajax({
        url: "ajaxfunc.php",
        dataType: 'json',
        success: function(data){
        alert(data.resp);
    }
});

在ajaxfunc.php我有

<?php echo json_encode(array("resp"=>"1")); ?>

但由于一个奇怪的原因,数据始终为null,而data.resp未定义。

问题出在哪里?

3 个答案:

答案 0 :(得分:1)

您忘记在PHP中设置内容类型。

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

在jQuery中设置dataType: 'json'时,它实际上需要来自服务器的JSON内容。

答案 1 :(得分:0)

你可以试试这个:

<?php

$data->resp = 1;
echo json_encode($data);

?>

答案 2 :(得分:0)

我在我的系统中工作了。

<script language="javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.js"></script>
<script language="javascript">
$(document).ready(function(){

$.ajax({
    url: "b.php",
    async:false,
    dataType: 'json',
    success: function(data){
    alert(data.resp);
}
});

                       });
</script>

b.php

<?php 

$k['resp'] = 66;
echo json_encode($k);

?>