PHP5.1.6没有json_encode(),所以我想使用json_encode documentation上的函数。 我试图使用此函数的输出与ajax请求:
fetchArticles: function( e ) {
$.ajax({
url: 'article.php',
type: 'POST',
data: { id: $(this).data( 'id_prod' ) },
dataType: 'json',
success: function( results ) {
console.log('finished');
console.log(results);
}
});
我现在在article.php
:
if ( isset($_POST['id']) ) {
connect();
$articles = get_articles( $_POST['id'] );
echo json_encode( $articles ); return;
}
问题在于将结果返回到JS控制台:
finished
字。我可以在HTTP标头和响应中看到返回了正确的数据,但它没有打印到控制台。你能帮我解决这个问题吗?
答案 0 :(得分:1)
如果无法转换json文件,则抛出parsererror
异常,请尝试以下操作:
$.ajax({
url: 'article.php',
type: 'POST',
data: { id: $(this).data( 'id_prod' ) },
dataType: 'json',
success: function( results ) {
console.log('finished');
console.log(results);
},
error: function(jqXHR, textStatus, errorThrown) {
console.debug(jqXHR, textStatus, errorThrown);
}
});
当JSON无效时,它将输出您的错误。