Я относительно новичок в JQuery и AJAX в частности. У меня есть небольшая проблема с возвращаемым значением, всегда равным 0, хотя я думаю, что это на самом деле сообщение об успехе, и оно ничего не возвращает.
Я просмотрел Google-стих и у меня есть функция die () в обратном вызове PHP, и я считаю, что add_actions верны.
Я работаю на локальном хосте, хотя я сомневаюсь, что это влияет на это, и это все в админке, а не в клиентской части. Я также проверил, что js поставлен в очередь и локализован.
Я получаю сообщение 200 OK в области Chrome Developer.
Я также протестировал базовый AJAX с http://codex.wordpress.org/AJAX_in_Plugins, и он также возвратил 0, что заставляет меня задаться вопросом, является ли это чем-то другим, кроме кода, описанного ниже.
Сейчас я просто пытаюсь заставить его отправить что-то обратно в jQuery. Любая помощь будет оценена.
JQuery
jQuery(document).ready(function(){
jQuery('.cl_link_buttons').val('id').click(function() {
var currentid = jQuery(this).attr('id');
//alert(currentid);
console.log(currentid);
jQuery.ajax ( data = {
action: 'cleanlinks_ajax_get_post_data',
url: ajaxurl,
type: 'POST',
dataType: 'text',
"currentid" : currentid
});
jQuery.post(ajaxurl, data, function(response) {
var dataz = response;
alert( dataz );
console.log (dataz); //show json in console
});
return false;
}); //end click event
}); //end doc ready
PHP
add_action("wp_ajax_cleanlinks_ajax_get_post_data", "cleanlinks_ajax_get_post_data");
add_action("wp_ajax_nopriv_cleanlinks_ajax_get_post_data", "cleanlinks_ajax_get_post_data");
function cleanlinks_ajax_get_post_data() {
$from_ajax = $_POST['currentid'];
echo "do" . $from_ajax . "something";
die();
}
jQuery('.cl_link_buttons').val('id').click(function()
выглядит странно