getJSON()回调不使用PHP文件

时间:2016-02-05 17:42:12

标签: php jquery json

PHP code =>`

<?php
    //request data from the database
    //code here to connect to database and get the data you want

    /* Example JSON format 
    {
        "item1": "I love jquery4u",
        "item2": "You love jQuery4u",
        "item3": "We love jQuery4u"
    }
    */

    //return in JSON format
    echo "{";
    echo "item1: ", json_encode($item1), "\n";
    echo "item2: ", json_encode($item2), "\n";
    echo "item3: ", json_encode($item3), "\n";
    echo "}";
?>

JS =&GT;

$(document).ready(function(){ 
    //attach a jQuery live event to the button
    $('#getdata-button').click(function(){
        $.get('json-data.php', function(data) { 
        //alert(data); //uncomment this for debug
        //alert (data.item1+" "+data.item2+" "+data.item3); //further debug
        $('#showdata').html("<p>item1="+data.item1+" item2="+data.item2+" item3="+data.item3+"</p>");
        });
    });
});

请我早些时候也问过,我没有提供详细信息,所以这次我把整个样本包括在内 除此之外我的控制台没有错误。 谢谢你

1 个答案:

答案 0 :(得分:1)

您应该将以下标头添加到PHP文件中:

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

除此之外,只需将数据直接放入数组中,然后使用json_encode。 您的PHP文件应如下所示:

<?php
header('Content-type: text/json');
$results = array( "item1"=> "I love jquery4u",
"item2"=> "You love jQuery4u",
"item3"=> "We love jQuery4u"
);
echo json_encode($results);
?>

这会给你以下结果:

{
    "item1": "I love jquery4u",
    "item2": "You love jQuery4u",
    "item3": "We love jQuery4u"
}