我有一些php变量,我想通过json将值发送到js文件。到目前为止我所拥有的:
<?php
$data = array('artist' => $artistname, 'title' => $songname);
echo json_encode($data); // display encoded data.
?>
输出示例:
{"artist":"Nirvana","title":"Breed (Rough Mix)"}
和JS函数:
function radioInfo() {
$.ajax({
url: 'content.php?q=info',
cache: false,
dataType: 'json',
timeout: phpvars.ajaxtimeout,
success: function(data) {
if (data == null) { return false; }
$('.stream-info .artist').html('<a data-title="' + data.artist + '" href="#">' + shorten(data.artist, phpvars.artist_maxlen) + '</a>');
$('.stream-info .title').html('<a data-title="' + data.title + '" href="#">' + shorten(cleartrack(data.title), phpvars.title_maxlen) + '</a>');
}
}});
}
答案 0 :(得分:1)
在发送json:
之前,你必须在你的php文件中发送标题如果正确设置了content-type,jquery和其他所有框架都将解析你的json。
<?php
header('Cache-Control: no-cache, must-revalidate');
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
header('Content-Type: application/json');
flush();
$data = array('artist' => $artistname, 'title' => $songname);
echo json_encode($data); // display encoded data.
exit;
?>