Я порівняно новачок у jQuery та AJAX зокрема. У мене є невелика проблема із значенням повернення, що завжди дорівнює 0, хоча я думаю, що це насправді повідомлення про успіх, і воно нічого не повертає.
Я проглянув Google-verse і в мене функція die () у зворотному звороті PHP, і я вважаю, що add_action є правильними.
Я працюю над локальним хостом, хоча я сумніваюся, що це впливає, і це все в адміністраторі, а не в передній частині. Я також перевірив, що js підключений та локалізований.
Я отримую повідомлення 200 ОК у зоні розробника хрому.
Я також перевірив базовий 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()
виглядає дивно.