我有一个包含分类术语(thrid level terms)的下拉菜单,当选择一个术语时,我想通过ajax请求显示其父项。但由于某种原因,我得到的值是“0”而不是父项值。谁能帮,检查我的代码,看看我在这里失踪:从ajax请求中获得“0”
$("select#districts").change(function() {
$.ajax({
url: '/metrics/wp-admin/admin-ajax.php',
type: 'GET',
data: {action: 'county_request', term_id : $(this).children(":selected").prop("value")},
dataType: 'html',
success: function(data){
$('#district-county').html(data);
}
});
});
//获取父词条
function ajax_handle_request(){
$output = ajax_get_parent_term_by_id($_REQUEST['term_id']);
return $output;
}
add_action('wp_ajax_nopriv_county_request', 'ajax_handle_request');
add_action('wp_ajax_county_request', 'ajax_handle_request');
function ajax_get_parent_term_by_id($term_id){
$parent_term = get_term_by('id', $term_id->parent, 'state');
return $parent_term;
}
感谢寻找这个。我试过你的代码,但它没有返回任何值。我改变“回声”线,只是“返回$输出”,并返回“0”像以前..任何想法? – kumo99
问题是,在'/ wp-admin/admin-ajax.php'的最底部,你有'die'('0');'这实际上是给你一个“0”的东西。当您执行'return ...'时,返回值,并且由于您的函数是从动作钩子调用的,所以返回的值不会显示或任何内容。请尝试在'return ...'行之前添加'var_dump($ output);'并将其输出给我。 –
谢谢,这是var_dump的输出:bool(false)0 – kumo99