Javascript wordpress ajax返回零而不是字符串消息
我的ajax调用返回零,即使我在PHP函数的末尾编写了Javascript wordpress ajax返回零而不是字符串消息,javascript,php,jquery,ajax,wordpress,Javascript,Php,Jquery,Ajax,Wordpress,我的ajax调用返回零,即使我在PHP函数的末尾编写了die()。 我在这里查看了其他问题,没有弄明白,请看一下我的代码 我使用以下函数进行ajax调用: $('.aramex-pickup').click(function() { var button = $(this); var pickupDateDate = $('.pickup_date').val(); var pickupDateHour = $('.pickup_date_hour').val();
die()
。
我在这里查看了其他问题,没有弄明白,请看一下我的代码
我使用以下函数进行ajax调用:
$('.aramex-pickup').click(function() {
var button = $(this);
var pickupDateDate = $('.pickup_date').val();
var pickupDateHour = $('.pickup_date_hour').val();
var pickupDateMinute = $('.pickup_date_minute').val();
var pickupDate = pickupDateDate + ' ' + pickupDateHour + ':' + pickupDateMinute;
var orderId = button.data('id');
if (pickupDate) {
//show loader img
button.next('.ajax-loader').show();
var data = {
'action': 'aramex_pickup',
'order_id': orderId,
'pickup_date': encodeURIComponent(pickupDate)
};
$.ajax({
url: ajaxurl,
data: data,
type: 'POST',
success: function(msg) {
console.log(msg);
if (msg === 'done') {
location.reload(true);
} else {
var messages = $.parseJSON(msg);
var ul = $("<ul>");
$.each(messages, function(key, value) {
ul.append("<li>" + value + "</li>");
});
$('.pickup_errors').html(ul);
}
}, complete: function() {
//hide loader img
$('.ajax-loader').hide();
}
});
} else {
alert("Add pickup date");
}
return false;
});
我通过以下方式登记了行动:
add_action('wp_ajax_aramex_pickup', array($this, 'ajax_pickup_callback'));
所有这些都返回0,而不是“ajaxdone”
有什么帮助吗?实际上你的钩子没有被执行。正如您所看到的,您必须在ajax请求中传递操作
)) 只需通过以下方式注册您的操作:
add_操作('wp_ajax_aramex_picku','ajax_picku_callback')代码>?我在使用一个类,我必须使用数组($this,注册它您的ajax url是$$blabla$$/wp admin/admin ajax.php
?是的,ajax url是正确的,请尝试为nopriv添加一个操作。添加操作('wp_ajax_nopriv_aramex_pick',array('this,'ajax_picku picku aramex_callback'));添加操作('wp_ajax_aramex_picku array($this,'ajax_pickup_callback');
你能告诉我他在哪里添加了动作吗?????在你降级答案之前先想一想。请告诉我这个动作的名字是hook……@Steeve Pitisvar data={'action':'aramex_-picku','order_-id':orderId',picku-date':encodeURIComponent(pickupDate)};
add_action('wp_ajax_aramex_pickup', array($this, 'ajax_pickup_callback'));
jQuery.post(
ajaxurl,
{
'action': 'add_foobar',
'data': 'foobarid'
},
function(response){
alert('The server responded: ' + response);
}