问题是, json 文件未显示。我使用 Xampp 作为本地服务器。
php文件:
$array = array(
array(
"title" => "Erster Eintrag",
"description" => "Description",
"link" => "http://",
"pubDate" => "02.07.2015"
),
array(
"title" => "Zweiter Eintrag",
"description" => "Description",
"link" => "http://",
"pubDate" => "02.07.2015"
)
);
echo json_encode($json);
html文件:
$ajax({
url:'localhost/uebung/staticfeed.php',
type:'POST',
data:'data',
dataType: 'json',
success: function(result){
$('#feeds').html(result[0]);
}
})
答案 0 :(得分:1)
在PHP中使用json_encode
返回包含值的JSON表示的字符串。
使用$array
与json_encode
代替$json
。
echo json_encode($array);
/// ^^^^^^^^^
答案 1 :(得分:1)
JavaScript使用$ .ajax然后使用完整的URL。
$.ajax({
url:'http://localhost/uebung/staticfeed.php',
type:'POST',
data:'data',
dataType: 'json',
success: function(result){
$('#feeds').html(result[0]);
});
您还需要在php文件中对数组进行编码。
echo json_encode($array);
答案 2 :(得分:1)
将$ajax
更改为$.ajax
,这将删除代码中的错误,其他一切正常
答案 3 :(得分:1)
您在PHP答案中缺少JSON标头,Jquery可能会将您的响应解释为纯文本或HTML ...
此外,您回复$json
,您的数组为$array
。
尝试使用PHP:
header('Content-type: application/json');
$array = [["title" => "Erster Eintrag","description" => "Description","link" => "http://","pubDate" => "02.07.2015"],["title" => "Zweiter Eintrag","description" => "Description","link" => "http://","pubDate" => "02.07.2015"]];
echo json_encode($array);
这就在您的HTML上:
$.ajax({type: "POST", url: "localhost/uebung/staticfeed.php", data:data, dataType: "json", timeout: 25000, success: function (result) {
$('#feeds').html('First array:' + result.[0].title + '<br />Seccond array:' + result.[1].title );
}});
您需要在[result] ...
中选择INSIDE数组中的值