去掉
<script>alert('echo');</script>
如果您检查控制台,您的回应应该是echo。我怀疑以上所有代码都在您的插件功能文件中。基本上,PHP函数应放在函数文件中。
jQuery应该放置在您要从中接收响应的模板中。
add_action('wp_print_footer_scripts', 'print_js', 1000);
function print_js() { ?>
<script type="text/javascript">
jQuery(document).ready(function(){
jQuery.ajax({
url: 'wp-admin/admin-ajax.PHP',
type: 'POST',
data: {
'action': 'test_callback',
'whatever': 'text'
},
success: function (output) {
alert(output);
}
});
});
</script>
<?PHP
}
将此内容移出课堂…
function test_callback() {
$whatever = 8;
echo $whatever;
die();
}
add_action( 'wp_ajax_nopriv_testaction', 'test_callback' );
add_action( 'wp_ajax_testaction', 'test_callback' );