我使用以下jquery代码通过Wordpress中的AJAX检索帖子内容:
$.ajax({
type: 'POST',
url: ajax_object.ajaxurl,
data: ({action : 'ajax_page',
post_id: page_id
})
})
.done(function(data){
$('#page-content').html(data);
});
php函数:
function ajax_page() {
$post_id = $_POST['post_id'];
$post_data = get_post($post_id);
$title = $post_data->post_title;
$content = $post_data->post_content;
echo $title;
echo $content;
die(); // remove trailing 0
}
但我希望能够在2个不同的div中加载$ title和$ content。
$.ajax({
type: 'POST',
url: ajax_object.ajaxurl,
data: ({action : 'ajax_page',
post_id: page_id
})
})
.done(function(data){
$('#page-title').html(title);
$('#page-content').html(data);
});
非常感谢您的时间和帮助。
答案 0 :(得分:0)
您可以使用数组以干净的方式分隔您的ajax内容:
function ajax_page() {
$post_id = $_POST['post_id'];
$post_data = get_post($post_id);
$title = $post_data->post_title;
$content = $post_data->post_content;
echo json_encode(array($title,$content));
die(); // remove trailing 0
}
然后从数组中获取两个不同的返回值:
.done(function(data){
var myData = jQuery.parseJSON(data);
$('#page-title').html(myData[0]);
$('#page-content').html(myData[1]);
});
答案 1 :(得分:0)
在php函数中返回包含标题和数据的json数据,试试
echo json_encode(array('title'=>$title, 'data'=>$data));
在html中解析json数据并向你显示div;