我试图实现一个jQuery自动完成,其中自动完成从ajax源获取数据。然而,由于某种原因,当我打电话时,结果是302,而这反过来又会导致404。
这就是我所拥有的:
In functions.php:
function my_ajax_foo() {
die("OK");
}
add_action(\'wp_ajax_my_ajax_foo\', \'my_ajax_foo\' );
add_action(\'wp_ajax_nopriv_my_ajax_foo\', \'my_ajax_foo\' );
My Javascript:
function onGetData(term, callback) {
jQuery.post( "http://mydomain.com/wp-admin/admin-ajax.php", {
action: "my_ajax_foo",
cookie: encodeURIComponent(document.cookie),
term: term
},
function( response ) {
console.log( response );
} );
}
jQuery(document).ready(function() {
jQuery("#my_input_field").autocomplete( { source:onGetData } );
});
所有Javascript都已正确加载。当我在Autocomplete输入框中键入时,会进行ajax调用,但我可以在Firebug中看到该调用会导致HTTP 302。当我打电话给http://mydomain.com/wp-admin/admin-ajax.php
只需从浏览器URL我就可以得到-1
已返回,因此我知道URL存在。
非常感谢您的帮助。