0
我已经阅读了大量类似的问题,但似乎无法弄清楚我遇到的问题。这是我的插件文件(简化只是为了得到一个返回值):插件返回的WordPress Ajax 0
// add JS file
add_action('wp_enqueue_scripts', 'ajax_patient_login_enqueue_scripts');
function ajax_patient_login_enqueue_scripts() {
wp_enqueue_script('patient-login-ajax-scripts', plugins_url('/js/scripts.js', __FILE__), array('jquery'), '1.0', true);
// this sets up hooks that the javascript file can use to access ajax calls
wp_localize_script('patient-login-ajax-scripts', 'patientlogin', array(
'ajax_url' => admin_url('admin-ajax.php')
));
}
// login user
add_action('wp_ajax_nopriv_client_login', 'client_login');
add_action('wp_ajax_client_login', 'client_login');
function client_login() {
return 123;
}
我的JavaScript加载正确的,因为我可以通过它在浏览器中的步骤。这个问题似乎归结为其访问“client_login”操作的能力。这里的JS:
// handle login
function handleLogin() {
$.ajax({
url: patientlogin.ajax_url,
data: { action: 'client_login' },
success: function(result) {
// other functions...
}
});
}
'结果'总是0,我不明白为什么。浏览器似乎没有任何问题找到ajax_url,但似乎无法找到该操作。我可能错过了一些明显的东西,但我看不到它,任何帮助将不胜感激。
我知道它是简单的东西。谢谢!!! – Nate