我刚刚开始学习JSON,其他网站的教程使用此代码(我已经修改了这个代码):
$(document).ready(function(){
$('#getdata-button').click(function(){
$.ajax({
type: "GET",
url: "json-data.php",
dataType: "json",
success: function(){
alert('a');
$('#showdata').html(
"<p>item1="+data.item1+
" item2="+data.item2+
" item3="+data.item3+"</p>"
);
}
});
});
});
这是json-data.php的代码
<?php
$item1 = "candy";
$item2 = "chocolate";
$item3 = "ice cream";
//return in JSON format
echo "{";
echo "item1: ", json_encode($item1), "\n";
echo "item2: ", json_encode($item2), "\n";
echo "item3: ", json_encode($item3), "\n";
echo "}";
?>
问题是在我点击按钮(id为“getdata-button”)后,警报功能(用于调试目的)没有响应。 Firebug说请求成功,我可以从那里看到数据。没有发现错误。只是回调函数没有执行,但为什么?
答案 0 :(得分:2)
您需要正确输出JSON。用下面的
替换你的PHP$items = array(
'item1' => $item1,
'item2' => $item2,
'item3' => $item3
);
header('Content-type: application/json');
echo json_encode($items);