問題描述

除非我透過 exit()die()結束 Ajax 處理功能,否則 Ajax 函式接收所需和正確的輸出,但遵循 0

任何想法為什麼會發生?

這是否是這樣的,或者可以解決?

add_action('wp_ajax_get_homepage', 'get_homepage');
add_action('wp_ajax_nopriv_get_homepage', 'get_homepage');

function get_homepage(){
    echo "get_homepage ->";
    exit();
}

我在 AJAX in Plugins 閱讀,但為什麼這是必要的?

最佳解決方案

admin-ajax.php 的預設響應是,

die( '0' );

… 透過在返回所需內容後新增自己的 exit()die(),可以防止 admin-ajax.php 的預設響應也被返回。

它通常也意味著你的 ajax 呼叫成功了。

最終,為了回答你的問題,這意味著這樣工作。返回您的內容後退出的內容是正確的。

參考文獻

注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。