我必須在這裏錯過簡單的東西。 Firebug顯示的數據與NET標籤(NET選項卡 - >發佈 - >參數)應該完全相同。 PHP函數甚至不會回顯簡單文本。Wordpress插件開發 - AJAX JSON數據發送正確,但PHP響應始終爲0,爲什麼?
的PHP:
add_action('wp_ajax_nopriv_process_json', 'process_json_received');
add_action('wp_ajax_process_json', 'process_json_received');
function process_json_received(){
echo "ANYTHING...";
exit;
}
的JS/jQuery的(正確發送)
var data = JSON.stringify({ action: 'process_json', value_name: 'value' });//generic sample
$.ajax({ url: 'http://localhost:12345/site_name/wp-admin/admin-ajax.php',
data: {data: data},
type: 'post',
dataType: 'json',
success: function (response) {
alert("Got this from the server: " + response);
console.log(response);
$('body').append(response); // <-- Append the ajax response to the page body
},
complete: function(XMLHttpRequest, text_status) {
},
error: function (response) {
alert("Error getting php file");
}
});
同樣,也無所謂什麼是PHP函數,響應始終是0。可能是一個「enqueue_scripts」的東西,但ajax請求發送完全按照它應該。 Firebug中的NET選項卡顯示完美的JSON數據,因此問題必須與PHP功能(或正確訪問它)有關。也許WordPress的是以某種方式阻止它?必須是簡單的 - 我希望一個新的眼睛會有所幫助。在此先感謝...
您是否在錯誤函數或「成功」Console.log中顯示零時警報? 。如果你正在進入Success,那麼錯誤肯定是在PHP中的。 –