1
我想显示选择2搜索ajax结果与组。但它不显示任何结果。我为此使用WordPress Ajax。选择2组ajax结果
这里是我的JS代码,
jQuery('select.select2-group_filters-dropdown').select2({
//placeholder: "Select pages/post/categories",
ajax: {
url: ajaxurl,
dataType: 'json',
method: 'post',
delay: 250,
data: function (params) {
return {
q: params.term, // search term
page: params.page,
action: 'cp_get_posts_by_query'
};
},
results: function (data, page) {
return {results: data};
},
processResults: function (data) {
return {
results: data
};
},
cache: true
},
minimumInputLength: 0,
});
数据我从PHP返回的,
$searchString = $_POST['q'];
$childdata = array();
$query = new WP_Query(array('s' => $searchString));
if ($query->have_posts()) {
while ($query->have_posts()) {
$query->the_post();
$title = get_the_title();
$ID = get_the_id();
$childdata[] = array('id' => "post-".$ID, 'text' => $title);
}
} else {
$data[] = array('id' => '0', 'text' => 'No results Found');
}
$data = array(
"text" => "posts",
"children" => $childdata
);
wp_reset_postdata();
// return the result in json
echo json_encode($data);
die();
这无法按预期运行。它返回零结果。请帮我解决一下这个。
尝试的print_r(json_encode($数据));而不是回声 –
也试过了。但不工作。我的JSON结果是'{“text”:“posts”,“children”:{“id”:“post-39”,“text”:“Nihil voluptatem provident reprehenderit et voluptatem rerum” :“post-2”,“text”:“Sample Page”},{“id”:“post-99”,“text”:“Rerum quasi odio sed”},{“id” ,“text”:“Nesciunt iste doloribus exercitationem eligendi”},{“id”:“post-104”,“text”:“Praesentium et dolorem excepturi voluptatibus reiciendis”},{“id”:“post-81”, “text”:“Error corporis aut commodi”},{“id”:“post-63”,“text”:“et sequi enim delectus”}]}' – patilvikasj
您是否尝试过console.log收到的数据?它在控制台上给你0还是什么都没有? –