Javascript WordPress Ajax请求返回0
我不明白为什么什么也不退 我是Ajax的真正初学者。。 我刚刚读了很多关于在Woprdpress中使用Ajax的主题,但是这些示例对我来说非常高级 这是我的JS代码Javascript WordPress Ajax请求返回0,javascript,php,jquery,ajax,wordpress,Javascript,Php,Jquery,Ajax,Wordpress,我不明白为什么什么也不退 我是Ajax的真正初学者。。 我刚刚读了很多关于在Woprdpress中使用Ajax的主题,但是这些示例对我来说非常高级 这是我的JS代码combo\u checkout\u iRange.JS jQuery(document).ready(function() { jQuery('#loader').hide(); jQuery('#check-out-date').hide(); jQuery('#check-in-date').change
combo\u checkout\u iRange.JS
jQuery(document).ready(function() {
jQuery('#loader').hide();
jQuery('#check-out-date').hide();
jQuery('#check-in-date').change(function(){
jQuery('#check-out-date').fadeOut();
jQuery('#loader').show();
jQuery.ajax({
type: 'POST',
url:myAjax.ajaxurl,
data: {
action : 'my_ajax_handler',
parent_id: jQuery("#check-in-date").val()
},
success: function(data){
alert(data);
jQuery('#loader').hide();
jQuery('#check-out-date').show();
jQuery('#check-out-date').append(data);
}});
return false;
});
jQuery('#check-out-date').change(function(){
alert(jQuery('#check-out-date').val());
});
});
这是我在function.php
add_action("wp_ajax_my_ajax_handler", "my_ajax_handler");
add_action("wp_ajax_nopriv_my_ajax_handler", "my_ajax_handler");
function my_ajax_handler() {
if ( isset($_REQUEST["parent_id"]) ) {
$id = $_REQUEST["parent_id"];
return $id;
die();
}
}
注意:这应该适用于称为“会议”的帖子类型
这是我的ajax处理程序,我把它放在single_meetings.php
add_action("wp_ajax_my_ajax_handler", "my_ajax_handler");
add_action("wp_ajax_nopriv_my_ajax_handler", "my_ajax_handler");
function my_ajax_handler() {
if ( isset($_REQUEST["parent_id"]) ) {
$id = $_REQUEST["parent_id"];
return $id;
die();
}
}
在AJAX回调中不能使用
return
。代码永远不会到达下一行的die
。您需要回显该值,然后使用wp\u die()
替换:
return $id;
die();
与:
确保回调正确触发,以便排除这种情况。更改
echo$id代码>至回波5代码>。在将echo$id`编辑为echo 5;之后,它似乎无法正常工作没什么变化,但我不知道为什么谢谢你,你只需说明原因;)现在一切正常:)正如@Nathan所说,我的问题在于Ajax处理程序的位置,因此回调没有响应。您是否尝试检查浏览器控制台中的网络面板,以确保from数据包含在您的中?
echo $id;
wp_die();